Quase todas as empresas que atuam no varejo têm mais produtos do que espaço para vendê-los. Esse problema é característico de supermercados, lojas de departamentos e até mesmo empresas de comércio eletrônico. Nessas empresas, a administração precisa decidir que produtos vender dado um espaço disponível, de modo que sua lucratividade seja máxima. Suponha que o supermercado tenha 20 itens que ele pode disponibilizar em suas prateleiras, conforme a tabela a seguir:
Item Demanda entre reabastecimentos Lucro (R$/unidade) Área (cm2/unidade)
1 50 2 65
2 35 2 45
3 25 3 58
4 20 4 71
5 45 4 71
6 50 6 77
7 45 5 90
8 40 5 90
9 30 6 65
10 50 4 52
11 35 2 90
12 50 6 52
13 20 5 71
14 25 3 77
15 30 4 58
16 20 2 45
17 60 2 65
18 35 1 103
19 25 5 71
20 45 4 97
Se todos os itens fosse colocados à venda, seriam necessários 52290 \mathrm{~cm}^{2} de área de prateleira. O supermercado dispõe apenas de 37000 \mathrm{~cm}^{2} para alocar todos os itens a serem vendidos. Formule o programa linear para maximizar o lucro total do supermercado.

Passo 1

O enunciado pede que seja formulado um programa linear para maximizar o lucro total do supermercado, dado espaço limitado de prateleira. As perguntas implícitas são:
  • Qual é a variável de decisão que representa o que devemos escolher?
  • Qual é a função objetivo (o lucro a ser maximizado)?
  • Quais são as restrições (especialmente a de espaço e os limites de demanda)?
Informações relevantes fornecidas (peguei estes números da tabela do enunciado). Para cada item i=1,\dots,20 definimos três parâmetros: demanda d_i (unidades entre reabastecimentos), lucro unitário p_i (R$/unidade) e área por unidade a_i (cm ^2/unidade). Os valores são:
d_1=50,\; p_1=2,\; a_1=65
d_2=35,\; p_2=2,\; a_2=45
d_3=25,\; p_3=3,\; a_3=58
d_4=20,\; p_4=4,\; a_4=71
d_5=45,\; p_5=4,\; a_5=71
d_6=50,\; p_6=6,\; a_6=77
d_7=45,\; p_7=5,\; a_7=90
d_8=40,\; p_8=5,\; a_8=90
d_9=30,\; p_9=6,\; a_9=65
d_{10}=50,\; p_{10}=4,\; a_{10}=52
d_{11}=35,\; p_{11}=2,\; a_{11}=90
d_{12}=50,\; p_{12}=6,\; a_{12}=52
d_{13}=20,\; p_{13}=5,\; a_{13}=71
d_{14}=25,\; p_{14}=3,\; a_{14}=77
d_{15}=30,\; p_{15}=4,\; a_{15}=58
d_{16}=20,\; p_{16}=2,\; a_{16}=45
d_{17}=60,\; p_{17}=2,\; a_{17}=65
d_{18}=35,\; p_{18}=1,\; a_{18}=103
d_{19}=25,\; p_{19}=5,\; a_{19}=71
d_{20}=45,\; p_{20}=4,\; a_{20}=97
Capacidade de prateleira disponível: \;37000\\ \text{cm}^2.
O enunciado também informa que, se todos os itens fossem colocados à venda em suas demandas máximas, a área necessária seria \;52290\\ \text{cm}^2 (ou seja, \sum_{i=1}^{20} a_i d_i = 52290; peguei os a_i e d_i da tabela para essa soma).

Passo 2

Definição das variáveis de decisão (a parte mais importante para formular o modelo). Sempre que formular um programa linear, comece por decidir o que cada variável representa de forma clara.
Definimos para cada item i=1,\dots,20 a variável
x_i = \text{número de unidades do item } i \text{ a serem colocadas na prateleira entre reabastecimentos.}ú
Explicação didática: cada x_i é a quantidade que o supermercado vai alocar do item i. Essas quantidades geram lucro unitário p_i e ocupam área unitária a_i. Nosso objetivo será escolher valores de x_i que maximizem o lucro total sem ultrapassar a área disponível e sem exceder a demanda entre reabastecimentos (não faz sentido colocar mais unidades do que a demanda prevista).

Passo 3

Função objetivo (como traduzir “maximizar o lucro total” em matemática). O lucro total é a soma dos lucros de cada item, que é lucro unitário vezes quantidade vendida. Assim a função objetivo é
\text{maximizar}\quad Z=\sum_{i=1}^{20} p_i x_i.
Explicando os termos:
  • Z é o lucro total (em reais) que queremos maximizar.
  • p_i é o lucro por unidade do item i (peguei esses p_i da tabela).
  • x_i é a quantidade escolhida do item i.
Na prática, isso vira uma soma explícita com os coeficientes p_i; por exemplo, os primeiros termos seriam 2x_1 + 2x_2 + 3x_3 + \dots

Passo 4

Restrição de espaço (como transformar “área disponível” em equação). Cada unidade do item i ocupa a_i cm ^2. Logo a soma das áreas ocupadas por todas as unidades escolhidas não pode exceder a capacidade:
\sum_{i=1}^{20} a_i x_i \le 37000.
Explicando os termos:
  • a_i é a área por unidade do item i (peguei esses a_i da tabela).
  • O lado direito 37000 é a área total disponível (informação do enunciado).
  • Essa é uma restrição linear: soma de coeficientes vezes variáveis menor ou igual a uma constante.

Passo 5

Restrições de demanda e não-negatividade. Não podemos estocar mais do que a demanda entre reabastecimentos nem escolher quantidades negativas. Assim, para cada i:
0 \le x_i \le d_i.
Explicando os termos:
  • O limite superior d_i vem da coluna “Demanda entre reabastecimentos” da tabela (peguei esses d_i da tabela).
  • A desigualdade inferior x_i\ge 0 é óbvia: não faz sentido número negativo de unidades.
  • Em muitos contextos de estoque, x_i deve ser inteiro (número de unidades). Isso transforma o modelo em um programa linear inteiro (ou programa inteiro linear). Se a formulação pedida é estritamente linear contínua, pode-se relaxar a integralidade e permitir x_i contínuo; vou indicar ambas opções a seguir.

Passo 6

Comentário sobre integralidade e forma final. Em termos de formulação padrão:
  • Forma inteira (mais fiel à realidade de unidades discretas):
\begin{aligned} \text{maximizar}\quad & Z=\sum_{i=1}^{20} p_i x_i,\\[4pt] \text{sujeito a}\quad & \sum_{i=1}^{20} a_i x_i \le 37000,\\[4pt] & 0 \le x_i \le d_i,\quad x_i \in \mathbb{Z}\quad \text{para } i=1,\dots,20. \end{aligned}
  • Forma relaxada (programa linear contínuo, útil para obter limite superior rápido e às vezes usado em provas): substitui x_i \in \mathbb{Z} por x_i \ge 0 (e mantendo x_i \le d_i):
\begin{aligned} \text{maximizar}\quad & Z=\sum_{i=1}^{20} p_i x_i,\\[4pt] \text{sujeito a}\quad & \sum_{i=1}^{20} a_i x_i \le 37000,\\[4pt] & 0 \le x_i \le d_i,\quad \text{para } i=1,\dots,20. \end{aligned}
Ambas são fórmulas lineares: a primeira é um programa inteiro linear (PIL) e a segunda é um programa linear (PL). Em prova, se pedirem “formule o programa linear”, geralmente espera-se a forma relaxada com as variáveis contínuas e os limites d_i; caso a interpretação seja discreta, inclua a condição de integralidade.]

Passo 7

Vou escrever explicitamente a função objetivo e a restrição de área com os coeficientes numéricos (peguei todos os coeficientes p_i, a_i e d_i da tabela):
Função objetivo (coeficientes p_i):
\text{maximizar}\quad Z=2x_1+2x_2+3x_3+4x_4+4x_5+6x_6+5x_7+5x_8+6x_9+4x_{10}+2x_{11}+6x_{12}+5x_{13}+3x_{14}+4x_{15}+2x_{16}+2x_{17}+1x_{18}+5x_{19}+4x_{20}.
Restrição de área (coeficientes a_i):
65x_1+45x_2+58x_3+71x_4+71x_5+77x_6+90x_7+90x_8+65x_9+52x_{10}+90x_{11}+52x_{12}+71x_{13}+77x_{14}+58x_{15}+45x_{16}+65x_{17}+103x_{18}+71x_{19}+97x_{20}\le 37000.
Restrições de demanda:
\begin{aligned} &0\le x_1\le 50,\quad 0\le x_2\le 35,\quad 0\le x_3\le 25,\quad 0\le x_4\le 20,\\\ &0\le x_5\le 45,\quad 0\le x_6\le 50,\quad 0\le x_7\le 45,\quad 0\le x_8\le 40,\\\ &0\le x_9\le 30,\quad 0\le x_{10}\le 50,\quad 0\le x_{11}\le 35,\quad 0\le x_{12}\le 50,\\\ &0\le x_{13}\le 20,\quad 0\le x_{14}\le 25,\quad 0\le x_{15}\le 30,\quad 0\le x_{16}\le 20,\\\ &0\le x_{17}\le 60,\quad 0\le x_{18}\le 35,\quad 0\le x_{19}\le 25,\quad 0\le x_{20}\le 45. \end{aligned}
E finalmente a condição de domínio: ou x_i inteiro para cada i (programa inteiro) ou x_i real (programa linear relaxado), dependendo da necessidade prática ou do que o exame pedir.

Resposta

\displaystyle \text{maximizar}\\ Z=\;2x_1+2x_2+3x_3+4x_4+4x_5+6x_6+5x_7+5x_8+6x_9+4x_{10}+2x_{11}+6x_{12}+5x_{13}+3x_{14}+4x_{15}+2x_{16}+2x_{17}+1x_{18}+5x_{19}+4x_{20}
\displaystyle\text{sujeito a}
\displaystyle 65x_1+45x_2+58x_3+71x_4+71x_5+77x_6+90x_7+90x_8+65x_9+52x_{10}+90x_{11}+52x_{12}+71x_{13}+77x_{14}+58x_{15}+45x_{16}+65x_{17}+103x_{18}+71x_{19}+97x_{20}\le 37000
\displaystyle 0\le x_1\le 50,\\\ 0\le x_2\le 35,\\\ 0\le x_3\le 25,\\\ 0\le x_4\le 20,\\\ 0\le x_5\le 45,\\\ 0\le x_6\le 50,\\\ 0\le x_7\le 45,\\\ 0\le x_8\le 40,\\\ 0\le x_9\le 30,\\\ 0\le x_{10}\le 50,
\displaystyle 0\le x_{11}\le 35,\\\ 0\le x_{12}\le 50,\\\ 0\le x_{13}\le 20,\\\ 0\le x_{14}\le 25,\\\ 0\le x_{15}\le 30,\\\ 0\le x_{16}\le 20,\\\ 0\le x_{17}\le 60,\\\ 0\le x_{18}\le 35,\\\ 0\le x_{19}\le 25,\\\ 0\le x_{20}\le 45.
\displaystyle (Escolha do domínio: x_i\in\mathbb{Z}_{\ge0} para modelo inteiro realista ou x_i\ge0 real para a forma relaxada.)

Exercícios relacionados