Você está na página 1de 68

25/04/2022 23:40 Bases de Otimização com o MS Excel

Bases de Otimização com o MS Excel


Descrição
Renata Albergaria de Mello Bandeira
A Pesquisa Operacional e a construção de modelos lineares
utilizando o método simplex, no MS Excel.

Propósito
Conhecer a natureza da Pesquisa Operacional e dominar a solução de
problemas de Programação Linear, por meio do
método simplex ou pela utilização de softwares,
permitirá que você aplique a técnica de modelagem ao processo de
decisão de problemas complexos de
diversas origens, em especial, em sua atuação profissional.

Preparação
Para este conteúdo, são necessários uma calculadora e um software
editor de planilhas eletrônicas com o add-in do
solver habilitado.

Objetivos

Módulo 1

Pesquisa Operacional

Descrever conceitos gerais de Pesquisa Operacional e sua importância no processo


de tomada de decisão.

Acessar módulo

Módulo 2

Modelo de programação linear

Descrever as principais características e propriedades de um modelo de


Programação Linear.

Acessar módulo

Módulo 3

Método simplex para a resolução de problemas de programação linear

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 1/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Empregar o método simplex para a solução de problemas de Programação Linear.

Acessar módulo

Módulo 4

Solução de problemas de programação linear

Aplicar o solver para a solução de problemas de Programação Linear.

Acessar módulo

Introdução
É comum termos dificuldades para identificar a melhor solução quando nos deparamos com
um problema complexo. Afinal, são tantos os
dados e possíveis cenários que não
conseguimos processar sozinhos tantas informações. Esse tipo de situação é comum em
nossas vidas
pessoais e, especialmente, nos negócios. Acabamos, nesses casos, tomando
decisões com base em opiniões, intuições ou em experiências
passadas – nossas ou mesmo
de outras pessoas ou empresas. Sem dúvidas, esses caminhos são importantes e devem ser
sempre
considerados no processo de tomada de decisão. No entanto, em situações
complexas, o desenvolvimento de modelos pode ser uma
poderosa ferramenta de auxílio à
tomada de decisão.

Modelos são simplificações do objeto ou do problema de decisão que representam. A grande


vantagem em adotar um modelo para apoio ao
processo de tomada de decisão é a
possibilidade de examinar diferentes cenários, em geral, de forma mais rápida e barata
do que se fosse
analisado na realidade. Entre os diversos tipos de modelo que podem ser
utilizados, destacam-se os modelos matemáticos, que adotam a
lógica e a formulação
matemática para representar o problema estudado.

A Pesquisa Operacional (PO) é o campo do conhecimento que trata do desenvolvimento de


modelos matemáticos e algoritmos para auxiliar
o decisor na análise de problemas
complexos. A PO se destaca por fornecer uma ferramenta quantitativa para apoio ao
processo de tomada
de decisão para problemas complexos.

No contexto da programação linear, que se aplica, por exemplo, no planejamento de redes


logísticas, há métodos, como o método gráfico,
que se restringem à solução de problemas
com apenas duas ou no máximo três variáveis de decisão. Como solucionar, então,
problemas
mais complexos, com maior número de variáveis de decisão? Este é o assunto a
ser tratado neste tema. Além dos conceitos básicos de
Pesquisa Operacional e modelagem
de problemas com equações lineares, abordaremos o método simplex para a solução de
problemas de
programação linear e aprenderemos a utilizar o solver do Excel para a
solução desse tipo de problema.

1
https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 2/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Pesquisa Operacional
Ao final deste módulo, você será capaz de descrever conceitos gerais de Pesquisa Operacional e sua importância no processo de tomada de
decisão.

video_library
Apresentação do tema
Neste vídeo você conhecerá o conceito de Pesquisa
Operacional, sua origem e as áreas de aplicação:

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 3/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Pesquisa operacional
A Pesquisa Operacional (PO) é definida pela Sociedade
Brasileira de Pesquisa Operacional (SOBRAPO) como:

A área de conhecimento que estuda, desenvolve e aplica métodos analíticos


avançados para auxiliar na
tomada de melhores decisões nas mais diversas
áreas de atuação humana.

SOBRAPO, 2021

A Pesquisa Operacional fornece ferramentas


quantitativas ao processo de tomada de decisões (PRADO, 2016). Dessa forma, a PO
auxilia o decisor
na análise de variados aspectos e situações de um problema
complexo, por meio de uso de técnicas de modelagem matemática e eficientes
algoritmos computacionais. Isso permite a tomada de decisões efetivas e a construção
de sistemas mais produtivos (SOBRAPO, 2021).

O estudo da PO permite o domínio de diversas técnicas relacionadas à programação


e modelagem matemática.

Por meio desses conceitos e das ferramentas


quantitativas, poderemos analisar os mais variados tipos de problemas, e fornecendo
dados e
informações concretos para auxiliar no processo de tomada de decisão.

post_add

Saiba mais
Sociedade Brasileira de Pesquisa Operacional

Fundada em 1969, a Sociedade Brasileira de Pesquisa Operacional (SOBRAPO)


reúne os profissionais de Pesquisa Operacional que atuam
no País – em
universidades, na iniciativa privada e no setor público –, com o objetivo de
incentivar o desenvolvimento desse campo do
conhecimento.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 4/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Além de organizar simpósios anuais, a SOBRAPO mantém as revistas


Pesquisa Operacional e Pesquisa Operacional para
Desenvolvimento,
buscando incentivar a publicação sobre o tema.

Origem – Circo de Blacket


A PO teve seus primeiros casos de
aplicação no meio militar, durante a Segunda Guerra Mundial.

Na ocasião, foram formados grupos de cientistas de


diferentes especialidades a fim de oferecer apoio quantitativo aos comandantes das
operações
militares inglesas e norte-americanas para a solução de complexos
problemas de natureza logística e de tática e estratégia militar (BELFIORE;
FÁVERO,
2012).

post_add

Saiba mais

Entre os grupos formados, destacou-se o aquele liderado por Patrick Maynard


Stuart Blackett – o Barão de Blackett. A equipe do Barão de
Blackett,
composta por membros de formações diversas – físicos, matemático,
topógrafos, astrofísicos e fisiólogos –, era conhecida
como o Circo de
Blackett. A equipe foi responsável pela publicação de um dos primeiros
artigos sobre Pesquisa Operacional.

O artigo apresentava um modelo


matemático para analisar o emprego dos meios antiaéreos das tropas aliadas
para fazer frente aos bombardeiros
alemães (Stuckas). Outros
problemas típicos abordados na ocasião se referiam ao tamanho e roteamento
de comboios, ao gerenciamento da
produção e à distribuição de armamentos e
munições, à coleta e distribuição de correspondência, ao problema de escala
e à localização de radares,
de modo a maximizar as áreas de cobertura.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 5/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Os bons resultados obtidos com a aplicação das técnicas de Pesquisa Operacional


durante a Segunda Guerra
levaram à disseminação desse conhecimento entre
organizações de diversas áreas após o fim do período de
combate.

A partir de 1947, é crescente o interesse das


indústrias na utilização das técnicas desenvolvidas na área militar para auxiliar no
planejamento e
controle da produção.

warning

Atenção

A disseminação da Pesquisa Operacional na área de planejamento e


controle, no entanto, só foi possível devido aos avanços que
ocorriam no
campo da informática. Tais avanços permitiram o advento de
microcomputadores, bem como o aumento da velocidade e de
capacidade de
processamento computacional.

Aplicação da PO na análise de decisão


Empresas dos mais diversos setores, atualmente,
empregam técnicas de Pesquisa Operacional com intuito de tornar seu processo de
tomada de
decisão mais eficiente e assertivo. Além do meio militar, a PO é
aplicada em indústrias de manufaturas, empresas de transporte, empresas de
construção, de telecomunicações, bancos, em assistência médica e até no serviço
público.

Veja algumas empresas que utilizam a PO:

Petrobrás expand_more

MRS Logística expand_more

Consultoria especializada expand_more

Problemas do cotidiano
https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 6/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

É evidente a importância da Pesquisa Operacional


na análise de decisão, em especial no ambiente gerencial. No entanto, as técnicas de
pesquisa
operacional também podem auxiliar a tomar decisões no seu dia a dia.

extension

Exemplo

Vamos supor que você queira comprar seu primeiro carro. Para isso, tem
economizado a remuneração que recebe no estágio e deseja
selecionar
investimentos para obter o melhor rendimento possível. Nesse caso, o
planejamento financeiro pode ser modelado por um
modelo matemático que
auxiliará a maximizar os seus rendimentos.

O planejamento financeiro é apenas um exemplo de como você pode aplicar


conceitos de PO em sua vida cotidiana.

Ao aplicar conceitos de PO
para a solução de um problema, desenvolvemos um modelo matemático para
representar o fenômeno estudado. Dessa
forma, conseguimos
analisar diversos cenários e ter estimativas baseadas em uma análise
quantitativa.

As decisões, portanto, não serão


tomadas apenas com base em opiniões, intuições ou experiências passadas de
outras pessoas ou empresas. Ao
modelar um problema, temos um processo
decisório mais criterioso e com menos incertezas.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 7/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Modelo

"Um modelo é uma representação abstrata e simplificada de um sistema real,


com o qual se pode explicar,
reproduzir, simular ou testar seu
comportamento, no todo ou em partes".

COUGO, 1997

Um mapa é um modelo, assim como uma maquete que o


arquiteto utiliza para que seus clientes consigam ter noção da visão espacial, em
3D, do
projeto desenvolvido. Uma formulação matemática usada para expressar um
fenômeno físico também é um modelo.

É importante ter em mente que os modelos são versões simplificadas do objeto ou


problema de decisão que
representam.

Entretanto, para que seja válido, o modelo precisa


representar, de forma precisa, as características relevantes do objeto ou problema
de decisão
estudado. Afinal, espera-se que o modelo melhore os processos de tomada
de decisão ao ser implementado.

warning

Atenção

A modelagem permite explicitar objetivos, bem como a possibilidade de ganhar


conhecimento e entendimento sobre o problema
investigado. Além disso, a
implantação de um modelo quantifica as decisões, permitindo a análise de
cenários que seriam impossíveis de
serem analisados na realidade. Outra
vantagem da construção de modelos é a economia de recursos e de tempo.

Na PO, modelamos os problemas matematicamente e, a


partir do modelo obtido, usamos algoritmos para encontrar soluções para diferentes
cenários do problema a ser analisado. Podemos utilizar diferentes tipos de modelos,
como veremos a seguir nesta aula.

Os diferentes tipos de modelo nos levam a adotar


diferentes técnicas de PO, como Programação Linear, Programação Não Linear,
Teoria das Filas,
Simulação, Inteligência Computacional e
Teoria dos Jogos. Nesta aula, vamos conhecer os modelos de
Programação Linear.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 8/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Veja o posicionamento da Associação Brasileira de


Pesquisa Operacional (ABEPRO) sobre Disciplinas da pesquisa Operacional:

Disciplinas da pesquisa operacional expand_more

Modelos matemáticos
Ragsdale (2009) define um modelo matemático como:

Conjunto de relacionamentos matemáticos


e suposições lógicas, geralmente implementados em
um computador, como
representação de algum problema ou fenômeno de decisão do mundo real.

O modelo matemático usa a lógica e a formulação


matemática para obter uma representação do problema ou do evento a ser analisado e,
a partir
de então, analisar, desenvolver cenários e obter soluções para a situação
modelada.

O uso de modelos matemáticos é mais barato do que replicar a estrutura real, além
de permitir testar todas as
possíveis soluções para diferentes cenários
(RODRIGUES et al., 2014).

Composição
Um modelo matemático em pesquisa
operacional é composto, basicamente, por variáveis de decisão, funções objetivo
e restrições. O modelo de
otimização busca os valores das variáveis de
decisão que otimizam – maximizam ou minimizam – a função objetivo, ao mesmo tempo em
que
atendem às restrições às quais o problema é submetido. Vejamos alguns exemplos:

Função objetivo - maximizar ou minimizar

Maximizar lucro de uma empresa

Sujeito a restrições

Disponibilidade de matérias-primas, de mão de obra etc.

Por exemplo, para aplicar o dinheiro que


você conseguiu economizar com a remuneração de seu estágio, você vai ao banco
verificar as diferentes
opções de investimento disponíveis.

Nesse problema, você deseja


maximizar seu rendimento – função objetivo. Os
recursos que você aplicará em cada opção de investimento são as
variáveis de
decisão. Além disso, você está sujeito às restrições
relativas ao total de recurso disponíveis e às exigências do banco para que sejam
realizadas as diferentes aplicações.

Classificação
Os modelos matemáticos de otimização, segundo
Winston (2004), podem ser classificados em:

Modelos estáticos ou dinâmicos expand_more

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 9/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Modelos lineares ou não lineares expand_more

Modelos inteiros ou não inteiros expand_more

Modelos determinísticos ou estocásticos expand_more

Neste conteúdo, abordaremos apenas os


modelos determinísticos.

Fases de um estudo de pesquisa operacional


Winston (2004) propõe um procedimento composto por
sete passos para o desenvolvimento de modelos matemáticos em estudos de pesquisa
operacional, conforme apresentado na imagem abaixo:

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 10/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 11/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Procedimento para desenvolvimento de modelos


matemáticos em estudos de pesquisa operacional.

Formulação do problema expand_more

Observação do sistema expand_more

Formulação do modelo matemático expand_more

Verificação do modelo matemático e uso para predição expand_more

Seleção da melhor alternativa expand_more

Apresentação dos resultados e conclusão expand_more

Implantação e análise das recomendações expand_more

playlist_play
Vem que eu te explico!
Módulo 1 - Vem que eu te explico!

Pesquisa Operacional

Módulo 1 - Vem que eu te explico!

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 12/68
25/04/2022 23:40 Bases de Otimização com o MS Excel
Modelos Matemáticos

emoji_events

Falta pouco para atingir seus objetivos.


Vamos praticar alguns conceitos?

Questão 1
A modelagem matemática consiste na arte (ou tentativa) de descrever um fenômeno pela representação de sistemas, a fim de prever o
comportamento deles ou propor soluções não previstas. Com relação ao processo de modelagem matemática em Pesquisa Operacional,
assinale a alternativa INCORRETA.

Fonte: questão adaptada do Concurso da Fundação o de Desenvolvimento da Pesquisa – UFMG (FUNDEP) para Indústrias Nucleares do Brasil
(INB) 2018 para o cargo de Engenheiro de Produção.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 13/68
25/04/2022 23:40 Bases de Otimização com o MS Excel
A A qualidade da solução do modelo depende da qualidade dos dados de entrada no modelo.

B Modelos matemáticos são objetos abstratos que procuram representar as principais características de um objeto real.

Modelos matemáticos podem ser classificados como estáticos ou dinâmicos em função de como a variação do tempo é
C
considerada no processo de modelagem.

Uma das vantagens relacionadas à modelagem matemática é a possibilidade testar todas as possíveis soluções para
D
diferentes cenários, geralmente, a um custo reduzido e em menor intervalo de tempo.

E Todas as variáveis de decisão devem ser inteiras para que um modelo matemático seja considerado inteiro.

Responder

Questão 2
A qualidade da solução de um modelo matemático depende da qualidade dos dados de entrada no modelo. Para o desenvolvimento de
modelos matemáticos em estudos de Pesquisa Operacional, o processo de coleta de dados ocorre no seguinte passo:

A Formulação do problema

B Observação do sistema

C Formulação do modelo matemático

D Verificação do modelo matemático e uso para predição

E Seleção da melhor alternativa

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 14/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Responder

starstarstarstarstar

Modelo de programação linear


Ao final deste módulo, você será capaz de descrever as principais características e propriedades de um modelo de Programação Linear.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 15/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Programação linear
A Programação Matemática – geralmente
chamada de otimização –, pode ser definida como:

Um campo da ciência de gerenciamento que encontra a maneira ideal ou mais


eficiente de usar recursos
limitados para atingir os objetivos de um
indivíduo ou de uma empresa.

RASGADALE, 2009

A Programação Linear, por sua


vez, é uma das técnicas mais difundidas de otimização, e sua aplicação é indicada
para a solução de problemas de
otimização que podem ser modelados por meio de
equações lineares.

post_add

Saiba mais

A Programação Linear vem sendo aplicada em problemas de indústrias de


diferentes setores, como bancos, petroleiras, empresas de
educação ou em
operadores de transportes. Empresas como a Fedex e a Amazon, por exemplo,
utilizam essas técnicas para programar as
rotas e determinar o caminho
mínimo na gestão de suas cadeias de distribuição.

No processo de modelagem, é preciso entender as


características do problema a fim de traduzi-las para uma linguagem matemática. No
caso
específico da Programação Linear, essa “tradução” ocorre por meio do
desenvolvimento de uma série de equações lineares, que representam as
características do problema analisado.

warning

Atenção

A Programação Linear, em suma, é uma técnica de solução de problemas que


visa determinar o máximo ou o mínimo de uma função linear
cujas variáveis
estão sujeitas a um conjunto de restrições representadas por um sistema de
equações ou inequações lineares.

Características
As principais características de problemas de
Programação Linear são:

1. Todas as equações são da forma linear, ou


seja:

a1 x1 + a2 x2 + … + am xm = an

2. Há sempre um objetivo a ser otimizado – maximizado ou minimizado. Isso


significa que há sempre a busca pela melhor solução entre várias
alternativas. Apenas um objetivo pode ser otimizado por vez, sendo
representado pela função objetivo.

3. No problema, há fatores controláveis que serão analisados, verificando-se os


valores desses fatores que levam ao melhor resultado para otimizar

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 16/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

o
objetivo. Tais fatores controláveis são as variáveis de
decisão (x1, x2, ..., xm). A
função objetivo é escrita em termos das variáveis de decisão.

4. No problema, há fatores não controláveis que influenciam os resultados


encontrados para as variáveis de decisão. Esses fatores não controláveis
são
os parâmetros (a1, a2, ...,
am).

Elementos
Um modelo de Programação Linear apresenta
elementos principais – as variáveis de decisão, os parâmetros, a função objetivo e o
conjunto de
restrição. A seguir, vejamos cada um deles.

Variáveis de decisão

São os fatores controláveis do problema a ser analisado. Trata-se,


portanto, das incógnitas a serem definidas na solução do problema de
otimização. Podemos citar como exemplo a quantidade de um produto a
ser transportado da origem i para o destino
j, xij, sendo x a
quantidade do produto a ser transportado de i para
j.

Parâmetros

São os fatores não controláveis do problema a ser analisado, ou


seja, os dados de entrada que devem ser coletados antes da etapa de
modelagem do problema. Os parâmetros influenciam diretamente os
valores obtidos para a solução ótima do problema de otimização.

Como exemplo, podemos citar o custo de transportar uma unidade de um


produto por quilômetro, cij. Nesse caso,
c corresponde ao custo
por quilômetro percorrido no
transporte de um determinado produto de i para
j – R$/km.

Função objetivo

É a expressão matemática do objetivo a ser maximizado ou minimizado


na situação analisada. Por exemplo, pode-se desejar minimizar o
custo total do transporte de um produto de n
origens i para m possíveis destinos
j. Dessa forma, a função objetivo seria Min Custo=
n m
∑ ∑ c ij x ij
i=1 j=1

Restrições

É um conjunto de equações lineares que traduzem o limite físico à


solução do problema, ou seja, são os limitantes dos valores das
variáveis de decisão. Por exemplo, a quantidade total de um produto
que pode ser transportado da origem i para o destino j não pode ser
infinita.

m
Esse total é limitado pela disponibilidade de produtos na origem i.
Desse modo, temos que ∑ j=1 x ij ¯
≤ Si, ∨i , sendo Si a disponibilidade
de produto na origem
i

Representação
Podemos representar um modelo de Programação
Linear da seguinte forma:

Otimizar: z = f (x 1 , x 2 , … , x n )

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 17/68
25/04/2022 23:40

 sujeito a  : g 1 (x 1 , x 2 , … , x n ) ⎫

g 2 (x 1 , x 2 , … , x n )

………………

g m (x 1 , x 2 , … , x n )

Passo a passo para a construção de um modelo de programação linear


construção de modelos matemáticos de Programação Linear.


Bases de Otimização com o MS Excel

Onde as funções são lineares.


á
 Os valores das vari veis de decis o 

 devem satisf azer um 

 conjunto de restri

No processo de modelagem, devemos transformar a linguagem do problema em uma


linguagem matemática. Para
ções. 

isso, devemos começar definindo as variáveis de


decisão e, posteriormente, a função objetivo e as restrições.
ã

Rotacione a tela.

Uma vez compreendidas as principais


características e os principais elementos de problemas de Programação Linear,
podemos passar para a

Sugerimos que seja seguida uma sequência de três


passos para a modelagem de um problema de Programação Linear, conforme apresentado
na
imagem a seguir:

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html#
screen_rotation

18/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Procedimento para desenvolvimento de modelos de


Programação Linear.

Identificação das variáveis de decisão expand_more

Identificação da função objetivo expand_more

Identificação do conjunto de restrições expand_more

video_library
Programação linear
No vídeo a seguir você conhecerá o conceito de
Programação Linear, os principais elementos de um modelo de Programação Linear e os
passos
para a construção desse tipo de modelo:

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 19/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Aplicação do passo a passo para a construção de um modelo de


programação linear
Agora, iremos revisar os conceitos de Programação
Linear estudados até aqui a partir de um exemplo. Com isso, serão reforçados os
elementos e
as principais características de um problema de Programação Linear por
meio da construção de um modelo. Para isso, seguiremos os passos
apresentados
previamente.

extension

Exemplo

A Fitwear S/A é uma confecção de roupas esportivas e tem uma linha


fitness feminina. Essa linha produz roupas de ginástica exclusivas
para mulheres, como tops e calças de lycra.

Cada top de ginástica é vendido por R$ 80,00 e utiliza R$ 20,00 de


matéria-prima, como tecido e alinhamentos, e R$ 32,00 com mão de
obra. Além
disso, são demandados 30 minutos de corte e 15 minutos de costura para a
confecção de um top de ginástica.

Cada calça de ginástica é vendida por R$ 120,00 e utiliza R$ 35,00 de


matéria-prima, como tecido e alinhamentos, e R$ 40,00 de mão de
obra. São
demandados 15 minutos de corte e 30 minutos de costura para a confecção de
uma calça de ginástica.

A Fitwear só pode contar com 100 horas de corte por semana e 160
horas de costura. A confecção não tem problemas no fornecimento
de matérias-primas, de modo que o seu suprimento pode ser considerado
ilimitado assim como a demanda semanal de seus produtos.

A Fitwear deseja planejar sua produção semanal de modo a maximizar


seus lucros.

Vamos usar, a seguir, os passos do procedimento


proposto para construção do modelo de Programação Linear para o caso da Fitwear S/A.

Identificação das variáveis de decisão


https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 20/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

As variáveis de decisão devem descrever


completamente as decisões a serem tomadas. No caso da Fitwear, a empresa deve
decidir os produtos a
serem confeccionados. Com isso, a definição da Variável de
Decisão seria:

xi – quantidade de produto i confeccionada

Desse modo, temos:

x1 = Número de tops de ginástica confeccionados a cada


semana.

x2 = Número de calças de ginástica confeccionadas a cada


semana.

Identificação da função objetivo


Em qualquer problema de Programação Linear,
o analista sempre deseja maximizar ou minimizar alguma função das variáveis
de decisão. No
enunciado do problema, devemos procurar pelo propósito
que se procura atingir. Dessa forma, saberemos o que deve ser maximizado ou
minimizado a fim de definirmos a função objetivo.

No caso da Fitwear, a empresa deseja maximizar seu


lucro semanal:

A Fitwear deseja planejar sua produção


semanal de modo a maximizar seus lucros.

warning

Atenção

Lucro semanal = lucro semanal oriundo da venda de tops + lucro semanal


oriundo da venda de calças.

Precisamos, portanto, determinar o ganho semanal


obtido com a venda dos produtos e subtrair destes os gastos semanais com
matéria-prima e
mão de obra. Vejamos:

Ganho semanal da venda de tops e calças

Cada top é vendido por R$ 80,00, e cada calça é vendida por R$


120,00. Logo, o ganho semanal é igual a 80x1 +
120x2.

Observe que também devemos considerar os


custos. Vejamos:

Gasto semanal com matéria-prima

Cada top utiliza R$ 20,00 em matéria-prima, e cada calça utiliza


R$ 35,00.

Logo, o gasto semanal com matéria-prima é igual a


20x1 + 35x2.

Gasto semanal com mão de obra

Para confeccionar cada top, gasta-se R$ 32,00 em mão de obra.


Para cada calça, gasta-se R$ 40,00. Logo, o gasto semanal com
mão de
obra é igual a 32x1 +
40x2.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 21/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Desse modo, para determinar a função objetivo,


tem-se:

(+) Ganho semanal com vendas:


(80x1 + 120x2)

(-) Custo de matéria-prima: – (20x1 +


35x2)

(-) Custo de mão de obra: – (32x1 +


40x2)

(80x1 + 120x2) – (20x1 + 35x2) –


(32x1 + 40x2) = 28x1 + 40x2

Rotacione a tela. screen_rotation

A função objetivo, portanto, é

Os coeficientes da função objetivo


indicam a contribuição de cada variável nos lucros da Fitwear.

Identificação do conjunto de restrições


Observa-se que os valores dos coeficientes da
função objetivo para o problema de Programação Linear do caso da Fitwear são
positivos, e este é
um problema de maximização. Desse modo, à medida que
x1 e x2 crescem, o valor da função objetivo aumenta. No
entanto, x1 e x2 não podem
crescem indefinidamente, pois
existem as restrições.

assignment_ind

Comentário

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 22/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

No caso do problema da Fitwear, foram consideradas ilimitadas a


demanda por seus produtos e a oferta de matéria-prima, de modo que
não entram como restrições no modelo matemático.

Existem, no entanto, duas restrições relacionadas ao tempo disponível


para corte e ao tempo disponível para a costura.

Essas restrições devem ser definidas em termos


das variáveis de decisão x1 e x2. Com isso, temos:

Restrição 1: 100 horas de corte por semana. expand_more

Restrição 2: 160 horas de costura por semana. expand_more

Restrição 3: restrição de não negatividade das variáveis de decisão. expand_more

Após seguirmos os passos indicados para a


construção de um modelo de Programação Linear, temos a formulação matemática
para o problema da
Fitwear S/A, conforme apresentado a seguir:

M áxZ = 28x 1 + 40x 2

Rotacione a tela. screen_rotation

Devemos considerar que o modelo está sujeito


a:

0,5x1 + 0,25x2 ≤
100 🠮 restrição de horas de corte

0,25x1 + 0,5x2 ≤
160 🠮 restrição de horas de costura

x1, x2 ≥ 0
🠮 restrição de não negatividade das variáveis de decisão

playlist_play
Vem que eu te explico!
Módulo 2 - Vem que eu te explico!

Programação Matemática

Módulo 2 - Vem que eu te explico!

Variáveis de Decisão, Parâmetros e Função Objetivo

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 23/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

emoji_events

Falta pouco para atingir seus objetivos.


Vamos praticar alguns conceitos?

Questão 1

Entre os principais elementos de um modelo de programação linear, os fatores não controláveis do problema a ser analisado, ou seja, os dados
de entrada que devem ser coletados previamente a etapa de modelagem do problema, são denominados:

A Variáveis de decisão

B Variáveis condicionantes

C Parâmetros

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 24/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

D Função objetivo

E Restrições

Responder

Questão 2

Um sapateiro conserta 3 sapatos por hora, se somente consertar sapatos. Para fazer um par de sapatos novos, o sapateiro leva 2 horas, se fizer
somente sapatos. Ele gasta 4 unidades de couro para fabricar um par de sapatos. Para consertar uma unidade de sapato, ele gasta uma
unidade de couro.

Sabe-se que o total disponível de couro é de 12 unidades e que o sapateiro trabalha 10 horas por dia. O lucro unitário por par de sapatos é de 8
unidades monetárias e o do conserto de uma unidade de sapato é de 2 unidades monetárias. O sapateiro deseja planejar seu sistema de
produção diário de modo a maximizar seu lucro por hora.

Pedido 1 – A função objetivo do problema é:

A Max Z = x1 + 2x2, sendo x1 a unidade de sapato consertada e x2 a unidade de sapato fabricada.

B Max Z = 2x1 + 8x2, sendo x1 a unidade de sapato consertada e x2 a unidade de sapato fabricada.

C Max Z = 2x1 + 8x2, sendo x1 a unidade de sapato fabricada e x2 a unidade de sapato consertada.

D Max Z = 2x1 + 4x2, sendo x1 a unidade de sapato consertada e x2 a unidade de sapato fabricada.

E Max Z = 2x1 + 4x2, sendo x1 a unidade de sapato fabricada e x2 a unidade de sapato consertada.

Responder

Questão 3
Pedido 2 – A restrição em referente à disponibilidade de couro é:

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 25/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

A x1 + 2x2 ≤ 12, sendo x1 a unidade de sapato consertada e x2 a unidade de sapato fabricada.

B x1 + 2x2 ≤ 12, sendo x1 a unidade de sapato fabricada e x2 a unidade de sapato consertada.

C x1 + 4x2 ≤ 12, sendo x1 a unidade de sapato consertada e x2 a unidade de sapato fabricada.

D x1 + 4x2 ≤ 12, sendo x1 a unidade de sapato fabricada e x2 a unidade de sapato consertada.

E 3x1 + x2 ≤ 12, sendo x1 a unidade de sapato consertada e x2 a unidade de sapato fabricada.

Responder

Questão 4

Pedido 3 – A restrição referente às horas trabalhadas é:

A $$$3 x_{1}+x_{2} \leq 10$$$, sendo x1 a unidade de sapato consertada e x2 a unidade de sapato fabricada.

B $$$3 x_{1}+2 x_{2} \leq 10$$$, sendo x1 a unidade de sapato consertada e x2 a unidade de sapato fabricada.

C $$$\frac{x_{1}}{3}+x_{2} \leq 10$$$, sendo x1 a unidade de sapato consertada e x2 a unidade de sapato fabricada.

D $$$\frac{x_{1}}{3}+2x_{2} \leq 10$$$, sendo x1 a unidade de sapato consertada e x2 a unidade de sapato fabricada.

E $$$3 x_{1}+x_{2} \geq 10$$$, sendo x1 a unidade de sapato consertada e x2 a unidade de sapato fabricada.

Responder

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 26/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

starstarstarstarstar

Método simplex para a resolução de problemas de programação


linear
Ao final deste módulo, você será capaz de empregar o método simplex para a resolução de problemas de programação linear

video_library
Apresentação do tema
O vídeo aborda o método simplex e sua importância para
a resolução de problemas.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 27/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

O método simplex para a solução de modelos de programação linear


Podemos resolver, de forma simples, problemas de
programação linear com duas variáveis de decisão por meio do método gráfico.
Entretanto, são
poucos os problemas de programação linear no mundo real que envolvem
apenas duas variáveis de decisão, de modo que a aplicação do método
gráfico é
bastante limitada.

Então, como fazemos para


solucionar problemas mais complexos, com um maior número de
variáveis de
decisão?

Existe uma série de técnicas matemáticas para


resolver problemas de programação linear com qualquer número de variáveis sem a
necessidade de
visualizar em gráficos as regiões viáveis. Dentre tais técnicas,
destaca-se o algoritmo simplex, que foi o primeiro método desenvolvido para resolver
problemas de programação linear.

O algoritmo simplex foi desenvolvido por George B.


Dantzig, em 1947, enquanto trabalhava como consultor em matemática para o controle
da Força
Aérea norte-americana. O método simplex é específico para a solução de
problemas de otimização linear (equações ou inequações lineares). Trata-
se de um
algoritmo eficiente que se baseia na solução sucessiva de sistemas de equações
indeterminados, em que sistemas adjacentes são
avaliados de forma iterativa, sendo,
assim, adaptável ao cálculo computacional. Na época, os computadores estavam
começando a surgir, e a
resolução desse tipo de problema se tornava importante na
prática!

O simplex é considerado uma das grandes contribuições à programação matemática.

Antes de estudarmos o algoritmo simplex, é


importante entendermos o conceito do simplex e recordarmos alguns pontos sobre a
solução de
problemas de programação linear com duas variáveis de decisão por meio do
método gráfico.

O que é um simplex?
Um simplex é um polígono convexo, ou seja, com
propriedade especial: uma reta que passe por quaisquer dois pontos pertencentes a um
simplex
deve estar contida inteiramente dentro do simplex. Logo, na figura a seguir,
observa-se que o polígono representado em (a) não é convexo, enquanto
o ilustrado em
(b) é um simplex.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 28/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Polígono não convexo e polígono simplex.

As restrições de um problema de programação linear


sempre definem hiperespaços convexos. Esta é a premissa do algoritmo simplex e de
boa
parte da teoria de otimização convexa. Assim, o espaço de soluções de um
problema de programação linear, ou seja, a área formada pela
intersecção das
restrições do problema, é uma forma geométrica simplex.

Método gráfico
Para encontrar a solução ótima pelo método
gráfico, precisamos seguir os seguintes passos:

Desenhe as retas correspondentes


às restrições do problema e encontre o espaço de soluções.

Desenhe o vetor z (função


objetivo).

Desenhe linhas ortogonais ao vetor


z. Essas são as linhas de isocusto, isto é, são as retas que têm o
mesmo valor de z.

Calcule o valor de z no ponto


ótimo, ou seja, a linha de isocusto com maior z que ainda pertence
ao espaço de soluções.

Em um caso bidimensional, o espaço de soluções


viáveis é um plano, e a função objetivo é representada por um vetor. Assim, por meio
do método
gráfico, buscamos a reta (x2 = z —
ax1) perpendicular ao vetor da função objetivo com o maior
(ou menor) possível dentro do espaço de soluções.
Como o espaço de soluções é
simplex, a reta x2 = z — ax1 para z ótimo que
corta o plano, obrigatoriamente, corta as retas de restrições. Ainda,

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 29/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

como nos
pontos de interseção (vértices) temos mudança de inclinação (retas diferentes),
garante-se que a solução ótima se dá na interseção entre
retas de restrições (nos
vértices), de modo que o algoritmo simplex analisa apenas os pontos de interseção do
espaço de soluções.

Na verdade, esta foi a grande ideia de Dantzig para o desenvolvimento do


algoritmo simplex: dado que a solução
ótima está em um vértice do espaço de
soluções viáveis, por que não percorrê-los em busca da melhor solução
possível?

Método simplex
Conforme verificamos, a chave do algoritmo simplex
está no formato da região limitada pelas restrições. Portanto, apesar de ser um
procedimento
algébrico, os conceitos subjacentes ao método simplex são geométricos.

O simplex é um algoritmo iterativo, que se utiliza


de um ferramental baseado em álgebra linear para a resolução sucessiva de sistemas
de equações,
embora as restrições de problemas de programação matemática sejam
tipicamente inequações. Desse modo, a primeira etapa do método simplex
consiste em
converter as restrições de desigualdade em restrições de igualdade
equivalente. O algoritmo simplex só pode ser rodado se o
problema
estiver escrito na forma canônica, que é a forma de se representar
programas matemáticos por meio de equações. Para isso, precisamos
criar as chamadas
variáveis de folga ou de excesso.

Variáveis de folga (f) expand_more

Variáveis de excesso (e) expand_more

Veja o caso do problema da Fitwear, apresentado a


seguir. Será que conseguimos escrevê-lo em sua forma canônica?

Caso Fitwear S/A

A Fitwear S/A é uma confecção de roupas esportivas, tendo uma linha


fitness feminina, na qual produz roupas de ginástica exclusivas para
mulheres, como tops e calças de lycra.

Cada top de ginástica é vendido por R$80,00 e utiliza R$20,00 de


matéria-prima, como tecido e alinhamentos, e R$32,00 de mão de obra.
Trinta minutos de corte e 15 minutos de costura são demandados para
a confecção de um top de ginástica.

Cada calça de ginástica é vendida por R$120,00 e utiliza R$35,00 de


matéria-prima, como tecido e alinhamentos, e R$40,00 de mão de obra.
Quinze minutos de corte e 30 minutos de costura são demandados para
a confecção de uma calça de ginástica.

A Fitwear só pode contar com 100 horas de corte por semana e 160
horas de costura. A confecção não tem problemas no fornecimento de
matérias-primas, de modo que seu suprimento pode ser considerado
ilimitado, bem como a demanda semanal de seus produtos.

A Fitwear deseja planejar sua produção semanal de modo a maximizar


seus lucros.

Quando modelamos o problema, consideramos as


seguintes variáveis de decisão:

x1

Número de tops de ginástica confeccionados a cada semana.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 30/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

x2

Número de calças de ginástica confeccionadas a cada semana.

Assim, chegamos à seguinte formulação matemática


em sua forma-padrão.

M áxZ = 28x 1 + 40x 2

Sujeito a (forma-padrão):

0, 5x 1 + 0, 25x 2 ≤ 100 ➜ restrição de horas de


corte

0, 25x 1 + 0, 5x 2 ≤ 160 ➜ restrição de horas de


costura

x1 , x2 ≥ 0 ➜ restrição de não negatividade das


variáveis de decisão

Observe que tanto a restrição referente às horas


de corte quanto a restrição referente às horas de costura são do tipo ≤. Logo,
precisaremos de duas
variáveis de folga, f 1
e f 2 , para passar o problema para sua forma canônica.

M áxZ = 28x 1 + 40x 2

Rotacione a tela. screen_rotation

Sujeito à (forma canônica):

0, 5x 1 + 0, 25x 2 + f 1 = 100

0, 25x 1 + 0, 5x 2 + f 2 = 160

x1 , x2 ≥ 0

Rotacione a tela. screen_rotation

Uma vez adicionadas as variáveis de folga, o


problema da Fitwear é dito no formato canônico e pronto para ser resolvido pelo
método simplex!

Para resolver o problema de programação linear, o


algoritmo simplex se baseia na solução sucessiva de sistemas de equações,
utilizando-se do
conceito de variáveis básicas e não básicas:

Variáveis básicas expand_more

Variáveis não básicas expand_more

No problema da Fitwear, por exemplo, temos quatro


variáveis (x 1 , x 2 , f 1 e f 2 ) e apenas duas
equações (restrições). Entretanto, para que um
sistema de equações lineares seja
resolvido, é necessário que o número de equações seja igual ao número de variáveis.
De tal modo, para resolver o

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 31/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

problema da Fitwear, devemos considerar duas variáveis


como nulas (não básicas) e resolver o problema para outras duas (variáveis básicas),
e
assim fazemos por iterações sucessivas, até que encontremos o par de variáveis
básicas que nos dá a solução ótima.

Em linhas gerais, o algoritmo simplex parte de uma


solução viável do sistema de equações que constituem as restrições do problema de
programação linear, solução essa normalmente extrema (vértice). A partir dessa
solução inicial, o algoritmo adota um critério de escolhas para
encontrar novos e
melhores vértices da envoltória convexa do problema, e outro critério para
determinar se o vértice escolhido (solução básica) é ou
não um vértice ótimo
(GOLDBARG; LUNA, 2005). Assim, pelo método simplex, devemos:

Transformar o modelo em sua forma


canônica, ou seja, transformar o sistema de inequações em sistema de
equações.

Determinar uma solução básica


inicial, que será iterativamente melhorada.

Realizar o teste da otimalidade,


ou seja, verificar se a iteração atual é ótima ou se outras
variáveis não base (ou seja, que estão
zeradas) devem entrar na
base, pois têm potencial para contribuir para melhorar a solução.

Realizar o teste da mínima razão,


que determinará qual variável básica deve sair da base, ou seja,
verificará quais das variáveis devem
passar a ser nulas para que a
nova variável entre na base.

Calcular a nova solução básica e


voltar ao passo 3.

Arenales et al. (2007) descrevem o


algoritmo simplex em duas fases. A fase 1 traz o procedimento de como determinar uma
solução inicial,
enquanto o método simplex propriamente dito é apresentado na fase
2.

Passo 1 expand_more

Passo 2 expand_more

Fase 2: {início da iteração


simplex}

Passo 1: {cálculo da solução básica} expand_more

Passo 2: {cálculo dos custos relativos} expand_more

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 32/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Passo 3: {teste da otimalidade} expand_more

Passo 4: {cálculo da direção simplex} expand_more

Passo 5: {determinação do passo e variável a sair da base} expand_more

Passo 6: {atualização: nova variável básica, troque a l-ésima coluna de b


pela k-ésima coluna de n} expand_more

Na forma de algoritmo, como apresentado por


Arenales et al. (2007), o método simplex pode parecer difícil, mas vamos
entender o que Dantzig
propôs por meio de um exemplo.

Caso da empresa Glass Co.

A empresa Glass Co., que possui três fábricas, produz janelas e


portas de vidro. As esquadrias e ferragens em aço são feitas na
fábrica 1,
as esquadrias de madeira são produzidas na fábrica 2 e a
fábrica 3 produz o vidro e monta os produtos.

A direção da empresa decidiu modernizar sua linha de produtos e


propôs o lançamento de dois novos produtos:

Produto 1: porta de vidro de 2,5m com esquadria de


alumínio.

Produto 2: janela adornada com esquadria de madeira 1,2m x


1,8m.

O produto 1 requer capacidade produtiva das fábricas 1 e 3. O


produto 2 precisa das fábricas 2 e 3. A divisão de marketing
concluiu que a
empresa poderia vender tanto quanto fosse possível
produzir desses produtos por essas fábricas. Porém, ambos os
produtos competem
por capacidade produtiva da fábrica 3, não estando
claro qual mix dos dois seria mais lucrativo. Determine quais devem
ser as taxas de
produção para maximizar o lucro total, sujeitas às
restrições impostas pela capacidade produtiva:

Tempo de produção por lote (em horas)

Fábrica Produtos Tempo de produção disponível por semana (horas)

1 2

1 1 0 4

2 0 2 12

3 3 2 18

Lucro por lote R$3.000,00 R$5.000,00

Produção empresa Glass Co.

Extraída
de Hellier e Lieberman, 2013, pág. 21.

Inicialmente, devemos escrever o modelo matemático


para o problema da Glass Co., seguindo os passos do procedimento para construção do
modelo de programação linear:

double_arrow
https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 33/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Identificação das variáveis de decisão

double_arrow
Identificação da função objetivo

double_arrow
Identificação do conjunto de restrições

A seguir, vamos seguir cada um dos passos


indicados.

Identificação das variáveis de decisão expand_more

Identificação da função objetivo expand_more

Identificação do conjunto de restrições expand_more

Enfim, temos o seguinte modelo matemático para o


problema da Glass Co.:

M axZ = 3x 1 + 5x 2

 s.a. 

x1 ≤ 4

2x 2 ≤ 12

3x 1 + 2x 2 ≤ 18

x1 , x2 ≥ 0

x1 , x2 ≥ 0

Rotacione a tela. screen_rotation

Mas qual é o mix de produção


que nos dá a solução ótima?

O primeiro passo do algoritmo simplex é


transformar o modelo em seu formato canônico.

Passando para o formato canônico,


temos:

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 34/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

M axZ = 3x 1 + 5x 2

 s.a. 

x 1 + f 1 = 4 →  restri ção 1
2x 2 + f 2 = 12 →  restrição 2

3x 1 + 2x 2 + f 3 = 18 →  restri ção 3
x 1 , x 2 , f 1 , f 2 , f 3 >= 0

Rotacione a tela. screen_rotation

Em seguida, devemos escolher uma solução básica


inicial. Observe que temos três equações no sistema de equações e cinco variáveis.
Dessa
forma, devemos ter três variáveis-base e duas não base. O modo mais fácil de
resolver esta etapa é escolher as variáveis
x 1 e x 2 como variáveis
não básicas, uma vez que essa opção elimina
o trabalho necessário para encontrar a solução quando as variáveis básicas são as
variáveis de folga
(ou excesso) (f 1 , f 2 e f 3 ). Nesse
caso, se x 1 = 0 e x2 = 0 , z seria igual a zero também, enquanto
f 1 ,
= 4 f 2 = 12 e f3 = 18 .

Função objetivo: Z = 3x 1 + 5x 2 , logo,


para a solução inicial de x 1 = 0 e x2 = 0 , temos
Z = 0 .

Restrição
1: x 1 + f1 = 4 → 0 + f1 = 4 → f1 = 4 .

Rotacione a tela. screen_rotation

Restrição
2: 2x 2 + f 2 = 12 → 0 + f 2 = 12 → f 2 = 12 .

Rotacione a tela. screen_rotation

Restrição
3: 3x 1 + 2x 2 + f 3 = 18 → 0 + 0 + f 3 = 18 → f 2 = 18 .

Rotacione a tela. screen_rotation

keyboard_double_arrow_down
Portanto, temos a solução inicial de (0, 0, 4, 12, 18).

Passamos, então, para o teste da


otimalidade. Como Z = 3x 1 + 5x 2 , verificamos que o
coeficiente de cada variável não básica (x 1 e x 2 ) fornece
a taxa
de crescimento em Z .

Como as taxas de crescimento são positivas (3 e 5) e este é um problema de


maximização, concluímos que a
solução inicial (0, 0, 4, 12, 18) não é a
solução ótima!

Já sabemos que a solução básica inicial não é


ótima, então uma variável não básica (x 1 ou x 2 ) deve entrar na
base. Porém, devemos aumentar x 1

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 35/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

ou
x 2 ?

Para determinar isso, devemos verificar a


direção de deslocamento. Observe que, para cada unidade que
aumentarmos x 1 , temos uma taxa de
crescimento em Z de 3. Ao mesmo
tempo, para cada unidade que aumentarmos x 1 , temos uma taxa de crescimento
em Z de 5. Sendo 5 > 3 ,
devemos optar por x 2 para crescer.
Logo, x 2 é a variável básica que entra.

Entretanto, para que x 2 passe a ser uma


variável básica, uma das variáveis-base da solução inicial (f 1 , f 2
e f 3 ) precisa sair da base. Porém, como
determinar qual delas?

Para essa etapa, devemos ter em mente que, ao


aumentar x 2 , eleva-se Z . Contudo, não podemos sair do espaço de
soluções, ou seja, da região de
soluções viáveis. Assim, devemos aumentar
x 2 , mantendo a variável não básica x 1 = 0 e respeitando que todas as
variáveis sejam não negativas.

x1 = 0 (variável não básica)

x1 + f1 = 4 → f1 = 4

2x 2 + f 2 = 12 → f 2 = 12 − 2x 2

3x 1 + 2x 2 + f 3 = 18 → f 3 = 18 − 2x 2

Rotacione a tela. screen_rotation

Como x 1 , x 2 , f 1 , f 2 , f 3 ≥ 0 :

Teste da mínima razão

f1 = 4 → não implica em limite superior em x 2

f 2 = 12 − 2x 2 ≥= 0 → x 2 ≤ 12/2 = 6 ←
MÍNIMO

f 3 = 18 − 2x 2 ≥ 0 → x 2 ≤ 18/2 = 9

Rotacione a tela. screen_rotation

Verificamos, então, que x 2 passa a


receber o valor de 6, enquanto f 2 se torna uma variável não base e nula.
Assim, deduzimos intuitivamente o
teste da mínima razão.

O objetivo do teste da mínima razão é determinar qual variável


básica cai a zero primeiro à medida que a variável
básica que entra é aumentada.

Podemos descartar imediatamente a variável básica


em qualquer equação cujo coeficiente da variável básica que entra é zero ou
negativo, já que
uma variável básica não decresceria à medida que a variável básica
que entra aumentasse.

No caso do problema da Glass Co., ao aumentarmos o


valor de x 2 de 0 a 6, temos mudanças na solução.

Solução inicial expand_more

Nova solução expand_more

Temos que x 2 é igual a 6 e x 1


continua sendo zero. Portanto, temos que Z = 3x 1 + 5x 2 = 3 ∗ 0 + 5 ∗ 6 = 30 .
Devemos determinar, então, os
valores de f 1 , f 2 e f 3 .

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 36/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

x1 + f1 = 4 → 0 + f1 = 4 → f1 = 4

2x 2 + f 2 = 12 → 2 ∗ 6 + f 2 = 12 f2 = 0

3x 1 + 2x 2 + f 3 = 18 → 3 ∗ 0 + 2 ∗ 6 + f 3 = 18 → f 3 = 6

A nova solução é (0, 6, 4, 0, 6) e Z = 30 !

Rotacione a tela. screen_rotation

Então, devemos verificar se essa solução é ótima


ou não, por meio do teste de otimalidade. Sendo Z = 3x 1 + 5x 2 , verificamos
que x 1 tem o
coeficiente positivo (= 3), de modo que aumentar
x 1 implica em aumentar Z . Portanto, a solução atual não é ótima e
devemos realizar nova
iteração, analisando a entrada de
x 1 como variável básica. Dessa forma, devemos realizar o teste da mínima
razão para determinar qual variável
básica deve se tornar nula, saindo então da
base, para permitir a “entrada” de x 1 .

Z − 3x 1 − 2, 5x 2 = 30

x1 + f1 = 4

2x 2 + f 2 = 12

3x 1 + 2x 2 + f 3 = 18

Teste da mínima razão

f 1 = 4 − x 1 ≥ 0 → x 1 ≤ 4/1 → x 1 ≤ 4

f 2 = 12 − 2x 2 ≥ 0 → nenhum limite superior em


x 1

f 3 = 6 − 3x 1 ≥ 0 → x →≤ 6/3 → x 1 ≤ 2 → mínima razão

Rotacione a tela. screen_rotation

Logo, f 3 sai da base para x 1


entrar com o valor igual a 2. Porém, ao aumentarmos o valor de x 1 de 0 a 2,
temos mudanças na solução.

Solução inicial expand_more

Nova solução expand_more

Temos que x 2 é igual a 6 e x 1


equivale a 2. Logo, temos que Z = 3x 1 + 5x 2 = 3 ∗ 2 + 5 ∗ 6 = 36 . Devemos
determinar, então, os valores de f 1 ,
f2 e f3 .

x1 + f1 = 4 → 2 + f1 = 4 → f1 = 2

2x 2 + f 2 = 12 → 2 ∗ 6 + f 2 = 12 → f 2 = 0

3x 1 + 2x 2 + f 3 = 18 → 3 ∗ 2 + 2 ∗ 6 + f 3 = 18 → f 3 = 0

Rotacione a tela. screen_rotation

Portanto, concluímos que x 1 substitui


f 3 como variável básica, sendo a nova solução igual a (2, 6, 2, 0, 0)
e Z = 36 . As variáveis não básicas
agora são f 2
e f 3 . Verificamos que aumentar as atuais variáveis não básicas não implica
em aumento em Z , o que garante que esta é a solução
ótima.

Método simplex em sua forma tabular


https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 37/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Aprendemos até agora a forma algébrica do simplex,


que é a melhor para aprender a lógica por trás do algoritmo. Porém, não é a forma
mais
conveniente para realizar cálculos necessários. As operações realizadas no
método simplex podem ser organizadas em tabelas, chamadas tabelas
simplex. Essa
organização é a mais indicada para quando estivermos resolvendo um problema de
programação linear manualmente.

Considere um problema de otimização linear:

 Minimizar f (x) = cx

Ax = b

x ≥ 0

Nesse problema, temos as variáveis x 1 , x 2 … x n . Os coeficientes da função objetivo são c 1 , c 2 … c n . Os coeficientes das restrições são
a1 , a2 … an e
b.

Arenales et al. (2007) descrevem as


operações realizadas em cada iteração do algoritmo simplex em tabelas, em duas
fases.

Fase 1:

Determine a tabela simplex inicial.

keyboard_double_arrow_down
A matriz dos coeficientes contém uma matriz identidade mxm (m
é o número de equações) e o vetor independente b ≥ 0 .

keyboard_double_arrow_down
A função objetivo é escrita em termos das variáveis não básicas,
isto é, os coeficientes das variáveis básicas são nulos.

keyboard_double_arrow_down
Faça a iteração = 0.

Fase 2:

Determine o menor dos custos relativos: c k = mínimo


{c j para toda variável não básica}.

keyboard_double_arrow_down
Se c k ≥ 0 , então pare (a solução básica na iteração é
ótima). Se não, a variável x k entra na base.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 38/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

keyboard_double_arrow_down
Se a ik ≤ 0, i = 1, … , m , então f → −∞ e o problema não tem solução ótima finita.
Nesse caso, pare.

bl bi
Se não, determine a lk
mínimo
{ a tal que a ik > 0, i = 1, … , m} . (a variável básica da linha l sai
da base).
ik

keyboard_double_arrow_down
Atualize a tabela simplex (pivoteamento do elemento (l, k)). A
variável x k passa a ser a variável básica na linha l. Faça
a iteração = iteração +1 e
retorne ao passo 1.

Na forma de algoritmo, como apresentado por


Arenales et al. (2007), o método simplex tabular pode parecer difícil, mas
vamos entendê-lo
resolvendo o exemplo da Glass Co., cujo modelo em formato canônico
é apresentado a seguir.

M axZ = 3x 1 + 5x 2

 s.a. 

ção 1
x 1 + f 1 = 4 →  restri

2x 2 + f 2 = 12 →  restrição 2

3x 1 + 2x 2 + f 3 = 18 →  restrição 3

x 1 , x 2 , f 1 , f 2 , f 3 >= 0

Rotacione a tela. screen_rotation

Inicialmente, vamos definir o formato da tabela de


maneira a facilitar sua compreensão. A tabela simplex tem, do lado esquerdo, as
variáveis
básicas e, do lado direito, as constantes das equações. No meio da tabela,
ficam todos os coeficientes das restrições e da função objetivo. Por
padronização,
colocaremos na primeira linha (zero) a equação que representa a função objetivo,
conforme apresentado na figura a seguir.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 39/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Tabela simplex.

Uma escolha viável para a primeira base para o


problema da Glass Co. seria (f 1 , f 2 e f 3 ), pois
facilitaria o preenchimento da tabela simplex inicial,
dado que B = I e B
−1
= I .

M axZ = 3x 1 + 5x 2

x1 + f1 = 4

2x 2 + f 2 = 12

3x 1 + 2x 2 + f 3 = 18

  a 3 a4 a5 a1 a2

1 0 0 I 1 0
⎡ ⎤

A = [B I N] = 0 1 0 I 0 2

⎣ ⎦
0 0 1 I 3 2

  f 1 f2 f3 x1 x2

1 0 0 1 0 0
⎡ ⎤ ⎡ ⎤
−1
B = 0 1 0 B = 0 1 0

⎣ ⎦ ⎣ ⎦
0 0 1 0 0 1

Rotacione a tela. screen_rotation

Quando as variáveis de folga constituem a primeira


base, na primeira linha da tabela simplex, apenas escrevemos o negativo dos
coeficientes de

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 40/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

custo das variáveis não básicas. Como z j − cj


representa a potencial melhoria no valor de z da função objetivo representada
pela j-ésima variável,
as variáveis atualmente básicas devem receber o valor zero,
pois já se encontram na base. Assim, a primeira linha da tabela simplex para o
exemplo
da Glass Co. é:

x1 x2 f1 f2 f3

Z -3 -5 0 0 0

O valor atual de Z , Z 0 , para esta


primeira tabela, com as variáveis básicas sendo f 1 , f 2 ,
f 3 , seria igual a zero, pois
Z = 3x 1 + 5x 2 e x1 = x2 = 0 .
Assim, atualizando a tabela, tem-se:

x1 x2 f1 f2 f3

Z -3 -5 0 0 0

Em seguida, devem-se escrever as linhas que


compõem as restrições da tabela simplex, conforme indicado na figura a seguir.

Restrições da tabela simplex.

Para cada variável do problema, deve-se determinar


y j . Como as variáveis de folga foram escolhidas como a primeira base, temos
B = I e
B
−1
= I .
Logo, temos y j = aj , de modo que as linhas que compõem as restrições no
tableau são copiadas diretamente do problema. Ainda, as
variáveis atualmente na base
(f 1 , f 2 , f 3 ) são identificadas à esquerda da tabela
simplex, como pode ser identificado na figura a seguir.

Max Z = 3x 1 + 5x 2

s. a.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 41/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Preenchendo a tabela simplex para o problema da Glass


Co.

Observa-se, por meio da figura anterior, que os


únicos elementos faltantes estão do lado direito da tabela simplex e correspondem à
fórmula:

−1
b̄ = B b = Ib = b

Desse modo, para a tabela inicial, basta copiar os


valores de b no lado direito da tabela, conforme apresentado na figura a
seguir.

Max Z = 3x 1 + 5x 2

s. a.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 42/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Tabela simplex inicial para o problema da Glass Co.

Uma vez preenchida a tabela inicial, devemos


identificar as variáveis candidatas a entrar na base na primeira linha da tabela.
Para isso, devemos
analisar os valores dos coeficientes de cada variável
apresentados na segunda linha da tabela simplex, levando em consideração o tipo de
problema
apresentado, maximização ou minimização:

Problema de maximização

Em um problema de maximização, a variável cujo coeficiente é negativo e


apresenta o maior valor absoluto é aquela que entrará na base.
numbers

Problema de minimização

Em um problema de minimização, a variável a entrar na base será a que


tiver o maior valor positivo.

Por meio da figura da Tabela simplex


inicial para o problema da Glass Co., observamos que a variável a
entrar na base no problema da Glass Co. é
x2 , uma vez que tanto x x quanto x 2 têm valores negativos
na segunda linha da tabela, sendo 5 > 3. .

Depois de identificarmos a variável que entra na


base, é preciso determinar a variável básica que deve dar lugar para que x 2
entre na base. Para isso,
aplicamos o teste da mínima razão,
conforme indicado na figura a seguir. Observa-se que o menor valor é 6, de modo que
a variável a sair da base é
f2 .

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 43/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Teste da mínima razão para o problema da Glass Co.

Para completar a iteração do simplex, devemos,


então, proceder com as operações elementares que utilizam a linha que contém o
elemento de
pivot, de modo que a coluna x 2
(da variável entrante) assuma a configuração da coluna f 2 (variável que sai
da base). Observe, na figura a seguir, que
a linha pivot é a quarta linha da tabela
(atual linha do f 2 no lado esquerdo da tabela) e que os valores para as
colunas
x 2 e f 2 não coincidem, de
modo que é necessário executar a
operação elementar. Portanto, sendo a linha (3) ′ a quarta linha da
tabela (3) após a operação elementar, tem-se
que a operação que transformará 2 em 1
é: (3) ′ = (3)/2 .

Operações com a linha pivot para o problema da Glass


Co.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 44/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Observe, na segunda tabela da figura anterior,


que, para a coluna x 2 assumir a configuração anterior da coluna
f 2 , é preciso ainda realizar operações
elementares nas linhas (1) e (4) da
tabela simplex. Assim, para a linha (4) ′ , é preciso que
(4) ′ ∗
= (4) − 2 (3) , enquanto para a linha (1) ′ devemos
fazer (1) ′ ∗
= (1) + 5 (3)

, conforme indicado na próxima figura.

wb_incandescent

Dica

Para a linha (2), não é preciso realizar nenhuma operação, uma vez que os
valores para as colunas x 2 e f 2 já são coincidentes.

Operações com a linha pivot para o problema da Glass


Co.

Verifique, na figura anterior, que a coluna


x 1 ainda apresenta um valor negativo na segunda linha da tabela simplex, de
modo que esta variável deve
entrar na base, sendo necessária, então, mais uma
iteração. Logo, faz-se o teste da mínima razão, conforme indicado na figura a
seguir, sendo
verificado que a variável a sair da base para que x 1
entre é f 3 . Portanto, são necessárias as operações elementares para que a
coluna x 1 receba os
valores da coluna f 3 .

Teste da mínima razão para o problema da Glass Co. —


2a iteração

Observa-se, na figura do Teste da mínima


razão para o problema da Glass Co. — 2a iteração, que a quinta linha
(4) da tabela simplex é a linha pivot.
Assim, para que a coluna
x 1 receba os valores da coluna f 3 , a primeira operação elementar a
ser feita é: (4) ′ = (4)/3 , tal como apresentado na
figura a seguir.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 45/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Primeira operação elementar (linha (4)) para o


problema da Glass Co. — 2a iteração.

Para a coluna x 1 assumir a configuração


anterior da coluna f 3 , ainda é preciso realizar operações elementares nas
linhas (1) e (2) da tabela
simplex. Assim, para a linha (2) ′ , é
preciso que (2) ′ = (2) − (4)

, enquanto para a linha
(1) ′ devemos fazer (1) ′ ∗
= (1) + 3 (4)

, conforme
indicado na próxima figura.

wb_incandescent

Dica

Para a linha (3) não é preciso realizar nenhuma operação, uma vez que os
valores para as colunas x 1 e f 3 já são coincidentes nesta
linha.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 46/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Operações com a linha pivot para o problema da Glass


Co. — 2a iteração.

report_problem

Atenção!

Verifique, na figura anterior, que não há mais valores negativos na segunda


linha da tabela simplex (1), de modo que não há mais variáveis
para entrar
na base. Logo, concluímos que a solução ótima para o problema da Glass Co. é
x 1 ,

= 2 x2 = 6 ez = 36 , tal como
apresentado na seção método
simplex, quando resolvemos este mesmo problema por meio do método simplex em
sua forma analítica.

playlist_play
Vem que eu te explico!
Módulo 3 - Vem que eu te explico!

O que é um simplex?

Módulo 3 - Vem que eu te explico!

O método simplex

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 47/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

emoji_events

Falta pouco para atingir seus objetivos.


Vamos praticar alguns conceitos?

Questão 1

A Fitwear S/A é uma confecção de roupas esportivas, tendo uma linha fitness feminina, na qual produz roupas de ginástica exclusivas para
mulheres, como tops e calças de lycra.

Cada top de ginástica é vendido por R$80,00 e utiliza R$20,00 de matéria-prima, como tecido e alinhamentos, e R$32,00 de mão de obra. Trinta
minutos de corte e 15 minutos de costura são demandados para a confecção de um top de ginástica.

Cada calça de ginástica é vendida por R$120,00 e utiliza R$35,00 de matéria-prima, como tecido e alinhamentos, e R$40,00 de mão de obra.
Quinze minutos de corte e 30 minutos de costura são demandados para a confecção de uma calça de ginástica.

A Fitwear só pode contar com 100 horas de corte por semana e 160 horas de costura. A confecção não tem problemas no fornecimento de
matérias-primas, de modo que seu suprimento pode ser considerado ilimitado, bem como a demanda semanal de seus produtos.

Considerando que seria possível produzir números não inteiros, qual deve ser a produção semanal a ser adotada pela Fitwear de modo a
maximizar seus lucros? Considere as seguintes variáveis de decisão:

$$$x_{1}$$$ = número de tops de ginástica confeccionados a cada semana

$$$x_{2}$$$ = número de calças de ginástica confeccionadas a cada semana

A $$$x_{1}=320, x_{2}=160$$$

B $$$x_{1}=200, x_{2}=160$$$

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 48/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

C $$$x_{1}=160, x_{2}=320$$$

D $$$x_{1}=280, x_{2}=220$$$

E $$$x_{1}=280, x_{2}=120$$$

Responder

Questão 2
Utilize o método simplex para a solução desta programação linear:

Máx: $$$350x_{1}+300x_{2}$$$

Sujeito a:

$$$X_{1}+X_{2}<=200$$$

$$$9 X_{1}+6 X_{2}<=1566$$$

$$$12 X_{1}+16 X_{2}<=2880$$$

$$$X_{1}>=0$$$

$$$X_{2}>=0$$$ O valor de z para a solução ótima do problema apresentado é igual a:

A Zero

B 54.000

C 60.900

D 64.000

E 66.100

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 49/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Responder

starstarstarstarstar

Solução de problemas de programação linear


Ao final deste módulo, você será capaz de aplicar o solver para solução de problemas de programação linear.

Utilização do solver para solução de problemas de programação linear


No módulo 1, aprendemos a resolver problemas de
programação linear por meio do método simplex, tanto o analítico quanto o tabular.
Aplicamos
essas técnicas em alguns exemplos, de modo a entender a lógica do algoritmo.
Porém, pudemos verificar que são muitos os cálculos que precisam
ser feitos para
resolvermos problemas de programação linear manualmente, e apenas um erro em uma conta
nos levaria a um resultado errado.
Contudo, felizmente, existem diversos softwares de
computador que podem ser utilizados para nos auxiliar a encontrar a solução ótima para
problemas de programação matemática, por exemplo:

LINDO

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 50/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

CPLEx

Aimms

GAMS

MathPro

Usando o software de computador adequado, podemos resolver facilmente quaisquer


problemas de programação
linear.

As técnicas para a solução de problemas de


programação linear são, inclusive, desenvolvidas por meio de pacotes de planilhas
eletrônicas. Assim
sendo, aprenderemos nesta seção a utilizar o solver do pacote de
planilhas eletrônicas Excel para solução de problemas de programação linear.

wb_incandescent

Dica

Os mesmos conceitos e técnicas que apresentaremos a seguir também podem ser


aplicados em outros pacotes de planilhas, dadas as
necessidades de
alterações em detalhes de implementação.

Passos para implementar um problema de programação linear em planilha


Ragsdale (2009) apresenta cinco passos que devem
ser feitos para implementar qualquer problema de programação linear em uma planilha:

Organize os dados para o modelo


(os coeficientes das restrições, os coeficientes da função objetivo
etc.) na planilha.

Reserve as células separadas na


planilha para representar cada variável de decisão do modelo
algébrico. Isso é útil na determinação
de fórmulas para a função e
restrições do objetivo.

Crie uma fórmula para cada célula


da planilha que corresponda à função objetivo no modelo algébrico.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 51/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Para cada restrição, crie uma


fórmula em uma célula separada na planilha. Muitas das fórmulas de
restrição têm estrutura
semelhante, de modo que, quando possível,
crie fórmulas de restrição que possam ser copiadas para implementar
outras fórmulas de
restrição.

Use sombras e cores de fundo e/ou


bordas para identificar as células que representam as variáveis de
decisão, restrições e funções
objetivos do modelo.

Instalando o solver
Demonstraremos, neste módulo, como usar o solver
do Excel resolvendo o problema enfrentado pela Fitwear. No entanto, antes de
iniciarmos a
resolução do problema, é preciso instalar o solver nos pacotes de
planilhas eletrônicas Excel. Para isso, siga o passo a passo:

Clique em arquivos > opções no


Excel, conforme indicado na figura.

Instalando o solver — Passo 1.

O segundo passo é clicar em


suplementos na tela que foi aberta.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 52/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Instalando o solver — Passo 2.

Na tela seguinte, clique no botão


ir, em gerenciar suplementos do Excel.

Instalando o solver — Passo 3.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 53/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Na próxima tela, clique na opção


solver.

Instalando o solver — Passo 4.

Para finalizar, basta clicar na aba


dados para visualizar a opção solver.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 54/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Instalando o solver — Passo 5.

Utilizando o solver
Agora que já temos o solver instalado no nosso
Excel, vamos iniciar a resolução do problema da Fitwear visto no módulo 1.

wb_incandescent

Dica

Caso seja necessário, retorne ao módulo anterior e relembre


como desenvolvemos o modelo matemático do problema.

Observe a seguir o modelo matemático, considerando


as variáveis de decisão:

x1

Número de tops de ginástica confeccionados a cada semana.

x2

Número de calças de ginástica confeccionadas a cada semana.

Temos a formulação matemática em sua


forma-padrão.

M áxZ = 28x 1 + 40x 2

 Sujeito a: 

0, 5x 1 + 0, 25x 2 ≤ 100 →  restri ção de horas de corte 


0, 25x → +0, 5x →≤ 160 →  restrição de horas de costura 

x 1 , x 2 ≥ 0 →  restrição de não negatividade das variáveis de decisão 

Rotacione a tela. screen_rotation

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 55/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Uma das primeiras etapas para a solução do


problema deve ser a organização dos dados. Vamos começar representando as variáveis
de decisão,
como indicado na figura a seguir. Observe que descrevemos as variáveis
de decisão na planilha, bem como os ganhos semanais com a venda de
cada produto
(x 1 e x 2 ), deixando destacado em amarelo as células variáveis (ou
ajustáveis), que reservamos na planilha para representar as
variáveis de decisão do
modelo.

Variáveis de decisão.

O próximo passo é criar uma fórmula que represente


a função objetivo de acordo com as variáveis de decisão indicadas na figura. Para
isso,
devemos utilizar a função “somarproduto” do Excel, que faz o produto escalar
entre dois vetores.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 56/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Função “somarproduto”.

A figura a seguir ilustra como inserimos a função


objetivo na planilha eletrônica no caso do problema da Fitwear. Observe que fizemos
a função
“somarproduto” entre o vetor (28,40), que corresponde aos coeficientes da
função objetivo, e as células que destinamos para receber o valor das
variáveis de
decisão. Com isso, teremos que a célula destacada em amarelo para a função objetivo
recebeu a fórmula 28 ∗ x 1 + 40 ∗ x 2 .

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 57/68
25/04/2022 23:40 Bases de Otimização com o MS Excel
Função objetivo.

De maneira análoga à que fizemos a representação


da função objetivo, precisamos representar as restrições. Para isso, também vamos
utilizar a
função “somarproduto” do Excel. Veja a seguir como inserimos as duas
restrições para o problema da Fitwear na planilha eletrônica.

Restrição de horas de corte expand_more

Restrição de horas de costura expand_more

Finalmente, terminamos a implementação do modelo do problema de programação


linear da
Fitwear no Excel. Entretanto, ainda precisamos resolvê-lo.

Para isso, é preciso indicar para o solver o que


cada célula da planilha representa:

A função objetivo

As variáveis de decisão

As restrições

Assim sendo, devemos definir a célula de destino,


ou seja, aquela que representa a função objetivo na caixa de diálogo
parâmetros do solver, como
indicado na próxima figura. Observe que
a célula E9 contém a fórmula que representa a função objetivo para
o nosso problema, como havíamos
preparado anteriormente. Neste momento, devemos
instruir também o solver para tentar maximizar seu valor, especificando o botão
max.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 58/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Definindo a função objetivo na célula de destino.

O próximo passo consiste em indicar as células que


representam as variáveis de decisão no modelo. Observe, na figura a seguir, que as
células C8 e
D8, em nossa planilha, representam as
variáveis de decisão para o modelo. O solver determinará os valores ótimos para
essas células.

Definindo as variáveis de decisão.

A seguir, devemos definir as células de restrição


na planilha e as restrições que se aplicam a essas células.

report_problem

Atenção!

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 59/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

As células de restrição são aquelas em que implementamos as fórmulas para


cada restrição.

Para definir as células de restrição, siga os


passos:

Clique no botão incluir.

Especificando as células de restrição — passo 1.

Preencha a caixa de diálogo incluir


restrições.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 60/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Especificando as células de restrição — passo 2.

Observe que as células E13 e


E14 representam as células de restrição cujos valores devem ser
menores ou iguais aos indicados nas células G13 e
G14, respectivamente.

Especificando as células de restrição — passo 3.

Já especificamos as restrições, mas ainda


precisamos determinar que as variáveis de decisão devem ser iguais ou maiores do que
zero. Para isso,
basta clicar em tornar variáveis irrestritas não
negativas na caixa de diálogo parâmetros do solver,
conforme indicado na figura a seguir. Enfim, para
encontrarmos a solução ótima para
o problema, basta clicar no botão resolver.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 61/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Condições de não negatividade.

A figura a seguir apresenta a tela de saída do


Excel com a solução ótima para o problema da Fitwear.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 62/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Solução ótima para o problema da Fitwear.

Observe que x 1 deve ser 53,33, x 2 recebe 293,333 e o valor


ótimo de é igual a 13.226,67.

video_library
Utilização do solver para a solução de problemas de programação linear
O vídeo mostra um passo a passo para a resolução de um
problema de programação linear no solver do Excel.

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 63/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

playlist_play
Vem que eu te explico!
Módulo 4 - Vem que eu te explico!

Utilização do solver para solução de problemas de Programação Linear

Módulo 4 - Vem que eu te explico!

Passos para implementar um problema de Programação Linear em planilha

emoji_events

Falta pouco para atingir seus objetivos.


Vamos praticar alguns conceitos?

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 64/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Questão 1
A fábrica XYZ produz rações para a alimentação de gado. As rações são elaboradas a partir da mistura de três diferentes tipos de grãos: 1, 2 e
3. Três nutrientes são considerados no produto final: A, B e C.

Sabe-se que o grão do tipo 1 custa R$35,00 por kg. Um quilo de grão 1 possui 30mg de nutriente A, 10mg de nutriente B e 43mg de nutriente C.
O grão do tipo 2 custa R$23,00 por kg. Ainda, um quilo do grão 2 possui 28mg do nutriente A, 17mg do nutriente B e 40mg do nutriente C. O grão
do tipo 3 possui apenas 70mg do nutriente tipo A e um quilo deste tipo de grão custa R$78,00.

A ração para gado deve conter, no mínimo, 1250mg de nutriente A, 380mg do nutriente B e 980mg do nutriente C.

O analista deseja determinar uma composição da ração que minimize os custos de produção, considerando que as necessidades mínimas dos
nutrientes sejam atendidas. Desse modo, é possível afirmar que a solução ótima para o problema tem um valor de igual a:

A 262,84

B 1262,84

C 2262,84

D 3262,84

E 4262,84

Responder

Questão 2
Uma mãe está muito preocupada com a alimentação de seus filhos. Ela deseja que as crianças tenham uma alimentação equilibrada e, por isso,
consultou uma nutricionista que lhe recomendou que eles comam, no mínimo, 10mg de vitamina A, 70mg de vitamina C e 250mg de vitamina D
por dia.

Porém, além de se preocupar com a qualidade da alimentação, essa mãe também está preocupada com os custos. Ela deseja oferecer aos
seus filhos essa dieta equilibrada, porém ao menor custo possível. Por isso, ela fez uma pesquisa e descobriu as informações nutricionais para
diferentes tipos de alimento, conforme apresentado na tabela.

Vitamina Leite (l) Carne (kg) Peixe (kg) Salada (100g)

A 2 2 10 20

C 50 20 10 80

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 65/68
25/04/2022 23:40 Bases de Otimização com o MS Excel

Vitamina Leite (l) Carne (kg) Peixe (kg) Salada (100g)

D 80 70 10 80

Informações nutricionais em mg

A mãe também foi ao supermercado e verificou que um litro de leite custa R$2,00, um quilo de carne custa R$20,00, um quilo de peixe custa
R$25,00 e para preparar 100g de salada ela gastaria R$3,00. Desse modo, é possível afirmar que a solução ótima para o problema tem um valor
de z igual a:

A 2,46

B 3,46

C 4,46

D 5,46

E 6,46

Responder

starstarstarstarstar

Considerações finais
Neste conteúdo, visitamos os principais conceitos da
Pesquisa Operacional, abordando a sua origem e evolução como campo do conhecimento.
Verificamos a sua importância e a aplicabilidade de suas técnicas e ferramentas no apoio
ao processo de tomada de decisão em diferentes campos
de atuação e setores.

Trabalhamos o conceito de modelo e vimos como um


modelo nos traz benefícios na análise de decisão. Nesse sentido, um modelo é uma
simplificação do problema a ser analisado, de modo que nos permite avaliar diferentes
cenários em menor tempo e com menos recursos.

Para que possamos de fato usufruir desses benefícios,


é fundamental que o modelo e a qualidade dos dados de entrada sejam fidedignos. Nesse
contexto, foram apresentados os principais passos a serem seguidos para o
desenvolvimento de um modelo matemático em estudos de Pesquisa
Operacional.

f
https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# f 66/68
25/04/2022 23:40 Bases de Otimização com o MS Excel
Uma das técnicas mais difundidas de Pesquisa Operacional é a Programação
Linear, cujos conceitos também foram
apresentados. Aprendemos sobre os
principais elementos de um modelo de Programação Linear e vimos como
construir esse tipo de modelo e encontrar sua solução por meio do Método
Gráfico. Todo esse conhecimento foi
apresentado por meio do desenvolvimento
do modelo matemático para o exemplo da Fitwear!

A Pesquisa Operacional pode nos auxiliar no apoio a


processos de decisão, em especial, para problemas complexos. Estudamos o método simplex,
tanto pelo modo analítico quanto pelo tabular, por meio do qual aprendemos a resolver
problemas de Programação Linear, encontrando a solução
ótima para esse tipo de problema.
Contudo, resolvê-los manualmente é muito trabalhoso, envolvendo um grande número de
cálculos. Um simples
erro em uma das contas requeridas implica encontrar uma solução
equivocada para o problema. Por isso, é muito importante conhecer softwares
computacionais que permitem a solução de problemas de programação matemática.

São muitos os softwares computacionais dedicados à


solução de problemas de programação matemática, como o CPLEx, o GAMS, o LINDO, o
LINGO
etc. No entanto, problemas de Programação Linear podem ser resolvidos pelo solver de
pacotes de planilhas eletrônicas. Por fim,
aprendemos a solucionar problemas de
Programação Linear por meio do solver do Excel. Isso certamente facilitará a aplicação
da Pesquisa
Operacional à solução de problemas reais.

headset
Podcast
Agora, a(o) especialista finaliza
fazendo um resumo dos conteúdos estudados.

00:00 08:41
speed
1x

Referências
ARENALES, M. et al. Pesquisa
operacional. Rio de Janeiro: Elsevier, 2007.

FOGLIATO, F. Pesquisa operacional. Porto Alegre,


2006. (Notas de aula).

GOLDBARG, M. C.; LUNA, H. P. Otimização combinatória e


programação linear. 2. ed. São Paulo: Campus, 2005.

LACHTERMACHER, G. Pesquisa operacional na tomada de


decisões. Rio de Janeiro: Campus, 2009.

RAGSDALE, C. T. Modelagem e análise de decisão.


São Paulo: Cengage Learning, 2014.

RODRIGUES, L. H.; AHLERT, F.; LACERDA, D. P.; CAMARGO, L. F. R.;


LIMA, P. Pesquisa operacional: programação linear passo a passo: do
entendimento do
problema à interpretação da solução. São Leopoldo: Unisinos, 2014.

COUGO, P. Modelagem conceitual e projeto de banco de


dados. Rio de Janeiro: Elsevier Brasil, 2013.

FÁVERO, L. P.; BELFIORE, P. Pesquisa operacional para


cursos de administração. Rio de Janeiro: Elsevier Brasil, 2012.

OLIVEIRA, F. Métodos quantitativos. Rio de


Janeiro, 2016. (Notas de aula).

PRADO, D. Programação linear. Vol. 1. São Paulo:


Falconi, 2016.

SOBRAPO – SOCIEDADE BRASILEIRA DE PESQUISA OPERACIONAL. O


que é Pesquisa Operacional? Disponível em meio eletrônico. Consultado em:
04 fev. 2021.

f
https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 67/68
25/04/2022 23:40 Bases de Otimização com o MS Excel
WINSTON, W. L.; GOLDBERG, J. B. Operations
research: applications and algorithms. Vol. 3. Belmont, Califórnia:
Thomson/Brooks/Cole, 2004.

Explore +
Assista ao vídeo O que é Pesquisa Operacional?,
da Sociedade Britânica de Pesquisa Operacional (OR Society), disponível no YouTube, para
entender
melhor o que é a Pesquisa Operacional, o desenvolvimento desse campo do conhecimento e suas
possibilidades de aplicação.

Leia os capítulos 1 e 2 do livro Pesquisa operacional na


tomada de decisões, de Gerson Lachtermacher, publicado em 2016.

Leia os capítulos 1, 2 e 3 do livro Modelagem e análise de


decisão, de Cliff T. Ragsdale, publicado em 2009.

Conheça métodos preparatórios (utilizados antes do emprego do


simplex) para resolver problemas diferentes do padrão de maximização com
restrições do tipo menor ou
igual no capítulo 4 do livro Operations research: applications and algorithms (Vol.
3), de Winston e Goldberg (2004).

picture_as_pdf Baixar conteúdo

https://stecine.azureedge.net/repositorio/00212ti/03824/index.html# 68/68

Você também pode gostar