Você está na página 1de 8

LISTA 1

Centro Federal de Educação Tecnológica Celso Suckow da Fonseca


Departamento de Engenharia de Produção
Disciplina: Pesquisa Operacional II
Tema: Modelagem de Problemas de Programação Inteira
Professor: Ormeu Coelho da Silva Júnior

1 – (Goldbarg & Luna, 2005) Uma confeitaria produz dois tipos de bolos de sorvete: chocolate e creme. Cada
lote de bolo de chocolate é vendido com lucro de $3,00 e os lotes de creme com lucro de $1,00. Contratos com
várias lojas impõem que sejam produzidos no mínimo 10 lotes de bolos de chocolate por dia e que o total de
lotes fabricados nunca seja menor que 20. O mercado só é capaz de consumir até 40 lotes de bolos de creme e
60 de chocolate. As máquinas de preparação do sorvete disponibilizam 180 horas de operação, sendo que cada
lote de bolos de chocolate consome 2 horas de trabalho e cada lote de bolos de creme 3 horas. Determinar o
esquema de produção que maximize os lucros com a venda de bolos de sorvete.

2 – Uma divisão militar precisa escolher os alimentos que serão fornecidos aos soldados designados a uma
determinada missão. Cada um deles possui uma mochila na qual sua ração deverá ser carregada. Nesta mochila o
peso máximo que a ração do soldado pode atingir é 4,5 kg. Há 6 opções de alimentos, cujos respectivos valores
calóricos e massas são mostrados na tabela abaixo:

Alimentos Valor Calórico (kCal) Massa (kg)


1 3.500 0,6
2 5.200 0,7
3 2.800 0,9
4 6.500 1,5
5 3.900 0,8
6 4.500 1,0

(a) Determine qual a quantidade de cada um dos alimentos que um soldado deve levar na mochila para que o
valor calórico total seja o maior possível.
(b) Resolva o item anterior considerando que apenas um alimento de cada tipo pode ser escolhido.
(c) Escreva a formulação algébrica geral do problema definido na letra (b).

OBS:
1 – O problema apresentado no item (a) é um exemplo (ou seja, um caso) do Problema da Mochila Inteira.
2 – O problema apresentado no item (b) é um exemplo (ou seja, um caso) do Problema da Mochila 0-1 ou
Mochila Binária.

3 – (Adaptado de Wolsey, 1998) Uma empresa dispõe de $4.000.000,00 e quer selecionar dentre sete projetos, P
= {1,2,...,7}, as melhores opções de investimento. Os lucros esperados de cada um dos projetos são dados na
tabela abaixo:

Investimento Capital Necessário ($) Retorno Esperado ($)


1 800.000 1.200.000,00
2 950.000 1.500.000,00
3 680.000 900.000,00
4 1.500.000 2.000.000,00
5 1.700.000 2.500.000,00
6 1.100.00 1.800.000,00
7 780.000 1.400.000,00

Formule um problema de programação binária para maximizar o retorno esperado total, mas que atenda as
seguintes restrições:
(a) Os investimentos 1 e 5 são mutuamente excludentes, isto é, a escolha de um impede a escolha do outro.
(b) Deve-se escolher pelo menos um investimento do subconjunto de projetos {1,2,3} e outros dois do
subconjunto {4,5,6,7}.
4 – (Adptado de Goldbarg & Luna, 2005) Um professor recebeu oferta de trabalho de 3 escolas que são
equivalentes em atributos como qualidade de ensino e oportunidade de aperfeiçoamento. Cada uma delas
gostaria, se possível, de contratá-lo em regime de tempo integral (dedicação exclusiva). Existem, contudo, outras
opções de comprometimento em carga horária. Os módulos de trabalho são de oito horas. A tabela abaixo
resume as várias propostas que o professor está examinando:

Nº de módulos Escola 1 Escola 2 Escola 3


1 105 135 150
2 240 250 310
3 400 380 390
4 500 490 560
5 590 630 660

Formule um programa inteira para determinar o esquema de trabalho que maximiza o retorno financeiro de seu
trabalho.

5 – (Adaptado de Goldbarg & Luna, 2005) Um serviço de entrega rápida de pizza recebeu um pedido urgente de
pizza, no qual o cliente ofereceu uma gorjeta extra, caso a entrega seja feita rapidamente. A malha rodoviária que
separa o ponto em que a pizza é feita e seu destino é representada pelo grafo abaixo. Nela, as arestas representam
ruas e os vértices, as esquinas entre elas. Sobre cada aresta há um valor associado que indica o comprimento da
respectiva rua (ou o tempo médio para atravessá-la).
Formule um problema de programação inteira para determinar a rota que o entregador deve fazer de modo a
minimizar a distância total percorrida (tempo médio gasto) para entrega e assim aumentar as chances de uma boa
gorjeta.
5
7 2
10
1 3 8
25 2
5 5 10
Loja 0 6 10 Cliente
8 15
15 25
7
2 4 9
20
8 15
7

OBS: Este exercício é um exemplo de um problema clássico de Otimização em Redes, o Problema de Caminho
Mínimo entre pares de vértices de um grafo.

6 – (Goldbarg & Luna, 2005) Uma metalúrgica produz puxadores, rolamentos e guias para janelas de madeira.
Essas ferragens podem ser bronzeadas, pintadas ou anodizadas. A tabela 1 resume o número máximo de lotes
passíveis de produção, em uma semana, bem como o lucro unitário de venda por lote.

Tabela 1 – Limites de produção (nº peças) e lucros ($)


Padrão
Peça
Bronzeado Pintado Anodizado
Puxador 25 / $2,00 30 / $1,30 15 / $3,00
Rolamento 45 / $0,30 20 / $0,50 10 / $1,00
Guia 10 / $1,20 30 / $1,00 5 / $2,00

A empresa possui 800 homem-hora (H x h) por semana de mão-de-obra especializada. A tabela 2 resume a
utilização de mão-de-obra por lote de diversas ferragens produzidas.
Tabela 2 - Mão-de-obra (H x h) por lote
Padrão
Peça
Bronzeado Pintado Anodizado
Puxador 1 2 4
Rolamento 2 3 3
Guia 1 2 4

Sabe-se que, para bem utilizar o maquinário, para cada 5 lotes de puxadores produzidos deve-se fabricar entre 2 e
8 lotes de rolamentos e entre 1 e 9 lotes de guias.
Formular o problema de maximização do lucro da metalúrgica.

7 – (Adaptado de Goldbarg & Luna, 2005) Uma rede de lanchonetes possui 4 lojas em uma cidade. Para fazer
frente à demanda do verão o superintendente regional de compras da empresa adquiriu 7 containers de sorvete.
Devido a diferente localização de cada uma das filiais existem diferentes potenciais para venda de sorvete. Face à
experiência de venda, o superintendente estimou o lucro líquido ($) que seria possível obter, dentro do horizonte
de venda usual, em cada filial como a tabela abaixo sugere.

Lanchonetes
Nº containers Ponta Negra Pirangi Neópolis Petrópolis
1 4 2 6 1
2 6 6 12 4
3 10 8 14 8
4 12 10 18 16
5 14 12 20 20
6 16 16 22 21
7 18 20 22 24

Formule o problema de otimizar o lucro total obtido.

8 – Uma empresa precisa escolher onde instalar um ou mais armazéns de grande porte para atender às demandas
de 4 regiões comerciais distintas. Além de definir quantos armazéns e onde serão instalados, também é preciso
decidir quais armazéns atenderão quais regiões comerciais. Há 3 locais disponíveis para instalação dos armazéns
e, em cada local i, há um custo de instalação/operação Fi, cujos valores são mostrados no vetor [Fi] abaixo. Entre
cada local i (i = A,B,C) e as regiões comerciais j (j = 1,...,4) há custos de transporte Cij que variam linearmente
com a distância e a demanda. Considere ainda uma taxa de transporte  = $1,5/ton.km, ou seja, Cij = DijVj.
 50 
12 8 13 11   1.700   
    50 
[ Dij ]   13 14 15 9  em km [ Fi ]   1.550  em $ (V j )   em ton.
16 9 12 17   1.920   150 
     
 100 
(a) Formule um programa binário para determinar em quais locais serão instalados os armazéns e qual a
alocação de regiões comerciais aos armazéns, de modo a minimizar o custo total de configuração deste
sistema logístico (isto é, a soma dos custos fixos de instalação e dos custos variáveis de transporte das
demandas).
(b) É possível declarar alguma das variáveis deste problema como contínua no intervalo [0,1] e mesmo assim
garantir que há uma solução ótima na qual estas variáveis assumem valores inteiros? Justifique sua resposta.
(c) Considere agora, que devido a limitações técnicas e financeiras, não se deseja que mais de duas fábricas
sejam instaladas. Insira uma restrição no modelo elaborado para o item anterior de modo a garantir que isto
aconteça.
(d) Por fim, considere restrições de capacidade em cada armazém, expressas pelo total da demanda que pode
ser distribuída a partir deles. Suponha, então, que estas capacidades são dados pelo vetor (Ki) e que as
demandas de cada cidade são expressas no vetor (Vj). Altere o modelo proposto na letra (a) para
representar esta nova situação.
 150 
 
[ K i ]   150  em ton.
 250 
 
OBS:
(1) O problema apresentado no item (a) é um exemplo do Problema de Localização Facilidades Não-Capacitado
(UFLP - Uncapacitated Facility Location Problem).
(2) O problema apresentado no item (d) é um exemplo do Problema de Localização Facilidades Capacitado
(CFLP - Capacitated Facility Location Problem).
(3) Se as variáveis de alocação no CFLP forem definidas como binárias, dir-se-á que o problema considera
alocação única, pois cada cliente poderá ser alocado a apenas uma facilidade. Por outro lado, se a integralidade
requerida para estas variáveis for relaxada (isto é se elas forem consideradas contínuas no intervalo [0,1]), dir-se-á
que o problema considera alocação múltipla, o que implica que a demanda de um dado cliente pode ser atendida
por mais de uma facilidade.

9 - Uma mineradora tem diretos de lavra sobre um conjunto de cinco áreas para alimentar duas de suas unidades
de beneficiamento, que têm uma demanda anual de 7.500 e 10.000 toneladas, respectivamente. Os custos de
estabelecer uma mina e nela movimentar as pilhas de minério, assim como as capacidades esperadas de
produção, variam de área para área, sendo descritos na tabela 1. Considera-se uma frota homogênea e ilimitada,
capaz de operar com uma tarifa de R$1,50/ton.km. As distâncias entre as possíveis minas e as duas unidades de
beneficiamento são dadas na tabela 2.

Tabela 1 - Custos e capacidades das áreas de lavra


Custo Operação Capacidade Custo Movimentação
Área
(106R$ /ano) (ton./ano) (R$ /ton.)
1 2,50 12.000 0,25
2 1,25 6.000 0,20
3 1,00 5.000 0,35
4 1,50 6.000 0,30
5 2,00 8.000 0,20

Tabela 2 - Distâncias Rodoviárias entre minas e unidades de beneficiamento (km)


Unidade
Área 1 2
1 220 350
2 150 100
3 280 250
4 300 200
5 150 180

Escreva um modelo de programação inteira mista para determinar as minas a serem operadas e a distribuição dos
minérios entre elas e as unidades de processamento, de modo a minimizar o custo anual de operação desta rede
logística.

10 - Numa cidade de pequeno porte do interior de Minas Gerais se deseja localizar 3 creches públicas de modo a
atender toda a demanda por este serviço, que está distribuída ao longo dos 10 bairros que compõe o município.
Para fazer isso, a prefeitura dispõe de sete terrenos nos quais seria possível instalar as creches, sendo que o custo
de instalação esperado é o mesmo em qualquer um dos terrenos. Uma forma de abordar este problema de
localização é representar cada bairro por um único ponto no qual toda sua demanda é acumulada. Tem-se assim
uma rede, onde os vértices representam os bairros e as arestas os caminhos entre cada par de bairros. A cada
vértice j há um valor vj associado e que representa a demanda (em milhares de habitantes) daquele bairro.
Analogamente, a cada aresta está associado um valor c ij que representa o comprimento (em km) do caminho
mínimo que liga dois vértices adjacentes i e j.
Sabendo-se que as creches podem ser instaladas em qualquer um dos bairros do conjunto I = {1,2, 5, 7, 10},
formule um modelo de programação inteira para determinar a localização das três creches e a alocação das áreas
de demandas a elas, de modo que a minimizar a distância média que um usuário qualquer do sistema percorrerá
em busca do serviço.
11 – Uma empresa produz apenas dois tipos ração para atender as demandas semanais de seus clientes. Estes
produtos são produzidos em lotes e, cada vez que um lote é produzido há um custo fixo (isto é, que não depende
da quantidade produzida) associado às tarefas de preparação da máquina para receber um determinado tipo de
ração. Lotes produzidos em uma semana podem ser utilizados para atender as demandas de semanas posteriores,
porém com o pagamento de um custo de estocagem (dependente linearmente da quantidade armazenada ao final
de cada semana). As tabelas abaixo informam os valores dos custos de preparação e estocagem de cada produto,
assim como as demandas por cada produto ao longo do próximo mês:

Produto Custo Semanal de Estocagem Custo Fixo de Preparação (setup)


1 2 250
2 1,5 350

Produto Semana 1 Semana 2 Semana 3 Semana 4


1 100 250 50 50
2 200 0 50 300

Considere que os estoques no início da primeira são nulos e que em cada período há uma capacidade para
produção definida em número de horas, cujo valor é 80h. Considere ainda os tempos de preparação e de
produção mostrados na tabela abaixo.

Produto Tempo de preparação (h) Tempo de processamento (h/unidade)


1 1,75 0,15
2 2,5 0,20

Escreva uma formulação de programação inteira para minimizar o custo total de preparação e estocagem,
garantindo o atendimento integral da demanda.

OBS: O problema apresentado neste exercício é um caso do Problema de Dimensionamento de Lotes


Capacitado (CLSP - Capacitated Lot-Sizing Problem). Note que ele é determinístico e dinâmico.

12 – (Retirado de Lachtermacher, 2004) A Capitão Caverna S.A., localizada em Pedra Lascada, aluga 3 tipos de
barcos para passeios marítimos: jangadas, supercanoas e arcas com cabine. A companhia fornece juntamente
com o barco um capitão para navegá-lo e uma tripulação que varia de acordo com a embarcação: uma para
jangadas, duas para supercanoas e três para arcas. A companhia tem 4 jangadas, 8 supercanoas e 3 arcas e em seu
corpo de funcionários: 10 capitães e 18 tripulantes. O aluguel é por diárias e a Capitão Caverna lucra $50 por
jangada, $70 por supercanoa e $100 por arca. Faça um modelo de programação matemática que determine o
esquema de aluguel que maximiza o lucro.

OBS: Este exercício é na verdade um exemplo do Problema de Alocação de Recursos.

13 – (Retirado de Souza, 2009) Certa empresa trabalha com a produção de etiquetas autocolantes. O papel usado
para sua confecção encontra-se em bobinas de mesmo comprimento, todas com largura de 50 cm. As
encomendas para a próxima semana impõem a necessidade de se cortarem 32 bobinas de 15 cm de largura, 17
bobinas de 17,5 cm de largura e 21 bobinas de 20 cm de largura. É política da empresa manter em estoque o
excedente ao pedido em quantidade máxima de 10 bobinas cortadas de acordo com a encomenda. Esta ação
evita a imobilização de capital, uma vez que são incertos os próximos pedidos.

O departamento técnico relacionou na tabela abaixo as possíveis programações de cortes, tendo em vista as
encomendas.

Elabore um modelo de programação inteira que determine a estratégia a ser seguida pela empresa de forma a
minimizar os desperdícios face à necessidade de produção.

14 – (Retirado de Souza, 2009) Uma serralheria dispõe de barras de 7 metros de comprimento que devem ser
cortadas para obter barras menores atendendo a uma encomenda. As seguintes quantidades e tamanhos são
requeridos: 92 barras de 2 metros, 59 barras de 3 metros e 89 barras de 4 metros. Elabore um modelo de
programação linear inteira que minimize as perdas com os cortes.

OBS: Os exercícios 13 e 14 são, na verdade, um exemplo do Problema de Corte (Cutting Stock Problem). Mais
especificamente, do Problema de Corte Unidimensional.

15 – (Retirado de Souza, 2009) Um hospital trabalha com atendimento variável em demanda durante as 24 horas
do dia. As necessidades distribuem-se segundo a tabela:

O horário de trabalho de um enfermeiro é de 8 horas seguidas e só pode ser iniciado no começo de cada turno,
isto é, às 8 ou 12 ou 16 ou 20 ou 24 ou 04 horas. Elabore um modelo de PLI que minimize o gasto com a mão-
de-obra. Considere que cada enfermeiro recebe $100 por hora de trabalho no período diurno (08 às 20 h) e $125
no período noturno (20 às 08 h).

16 – (Retirado de Souza, 2009) Relativamente ao problema anterior, suponha que cada enfermeiro possa fazer
hora-extra trabalhando mais 4 horas consecutivas além de sua jornada normal de trabalho, isto é, mais um turno
de trabalho. Suponha que a hora-extra seja remunerada em 50% a mais que a hora normal. Considere, também,
que em cada turno não mais de 20% dos enfermeiros possam estar fazendo hora-extra. Faça um modelo de
programação linear inteira que minimize os gastos com a contratação de mão-de-obra. Antes de resolver o
problema, pense na seguinte questão: A solução ótima dessa variante poderá ter custo menor que a da solução
ótima sem a possibilidade de os enfermeiros fazerem hora-extra? Justifique.

OBS: Estes dois últimos exercícios são exemplos particulares do Problema de Alocação de Pessoal (Staff
Scheduling).

17 – (Retirado de Lachtermacher, 2004) A LCL Motores recebeu recentemente uma encomenda para produzir
três tipos de motores. Cada tipo de motor necessita de um determinado número de horas de trabalho no setor de
montagem e acabamento. A LCL pode terceirizar parte de sua produção. A tabela a seguir resume essas
informações:

Elabore o modelo de programação matemática que minimiza os custos de produção.

OBS: Este é um caso do Problema de Planejamento do Mix de Produção.

18 – (Retirado de Souza, 2009) Uma empresa siderúrgica possui 3 usinas e cada uma delas requer uma
quantidade mensal mínima de minério para operar. A empresa adquire minério de 4 minas diferentes. Cada uma
das minas tem uma capacidade máxima de produção mensal estabelecida. Por imposições contratuais, o custo do
minério para a empresa é composto por um custo fixo mensal para cada mina (este valor é pago em caso de
haver produção na mina), mais um custo de transporte ($/t) que varia de acordo com a distância entre as minas e
usinas (cada par mina/usina tem um custo diferente). Os dados são mostrados na tabela a seguir:

Custos variáveis de transporte Cap. máx.


Usina 1 Usina 2 Usina 3 Custo fixo ($)
($/ton.) (ton./mês)
Mina 1 10 8 13 11.500 50.000
Mina 2 7 9 14 14.500 40.000
Mina 3 6,5 10,8 12,4 13.000 30.000
Mina 4 8,5 12,7 9,8 12.300 25.500
Quant. requerida (ton./mês) 10.000 15.400 13.300 - -

Construir um modelo de otimização para determinar a quantidade de minério a ser comprada de cada mina e
levada a cada usina de forma a minimizar o custo total de compra de minério.

OBS: Este também é um caso do CFLP.

19 – Uma empresa precisa construir uma pequena linha de montagem para um novo produto. Este produto é
constituído de 5 tarefas principais de montagem, entre as quais há relações de precedência. Os tempos médios de
processamento de cada tarefa (em segundos) e suas relações de precedência são dados no grafo abaixo:
12

9 3
8 6
1 2 7 5

Dada a demanda esperada para este produto, cada posto de trabalho deve ser capaz de executar suas tarefas em
até 22 segundos (este valor é o tempo de ciclo da linha). Formule um modelo de programação inteira para
minimizar o número de postos de trabalho (cada um com um trabalhador) necessários à montagem do produto
no tempo de ciclo requerido. O modelo deve determinar ainda quais tarefas serão feitas em quais postos, de
modo que nenhuma tarefa seja executada em mais de posto.

OBS: Este é um caso do Problema de Balanceamento de Linha Simples do Tipo 1 (SALBP-1, Simple Assembly
Line Problem - Type 1), no qual o objetivo é minimizar o número de postos de trabalho, garantindo a locação de
todas as tarefas e respeitando o takt-time ( = tempo disponível/demanda) da linha.

20 – Sabe-se que é possível balancear esta linha com apenas 3 postos de trabalho. Busca-se agora qual o esquema
de alocação de tarefas que suaviza a distribuição da carga de trabalho entre os 3 postos. Escreva um modelo de
Programação Inteira Mista para isso. Lembre-se que a carga de trabalho de um posto é definida como a soma
dos tempos das tarefas alocadas a ele. E suavizar a carga consiste em tornar as cargas dos postos o mais próximas
possível umas das outras.
OBS: Este é um caso do Problema de Balanceamento de Linha Simples do Tipo 2 (SALBP-2, Simple Assembly
Line Problem - Type 2), no qual se procura minimizar a máxima carga entre todos os postos, garantindo a alocação
de todas as tarefas em um dado número de estações. Do ponto de vista prático, pode-se resolver um problema
de balanceamento determinando o número mínimo de estações com uso do SALBP-1 e, posteriormente, usar o
SALBP-2 para buscar uma alocação alternativa que suavize a carga.

21 – Escreva a formulação algébrica geral para o Problema da Mochila Inteira, apresentado no exercícios 2(a).

22 – Qual(is) modificação(ões) devem ser feitas na formulação geral proposta no exercício anterior para
representar o Problema da Mochila Binária apresentado no exercício 2(b).

23 – Escreva a formulação algébrica geral para o Problema da Mochila Inteira, apresentado no exercícios 5.

24 – Escreva a formulação algébrica geral para o CFLP com alocação múltipla, apresentado no exercícios 8.

25 – Escreva a formulação algébrica geral para o CLSP, apresentado no exercícios 11.

26 – Escreva a formulação algébrica geral para o Problema de Corte Unidimensional, apresentado no exercício
13.

27 – Escreva a formulação algébrica geral para o SALBP-1, apresentado no exercício 19.

28 – Escreva a formulação algébrica geral para o SALBP-2, apresentado no exercício 20.

Você também pode gostar