Questão 1

A Viação Aérea Brasileira está estudando a compra de três tipos de aviões: Boeing 717 para as pontes aéreas de curta distância, Boeing 737-500 para vôos domésticos e internacionais de média distância e MD-11 para vôos internacionais de longa distância. Em um estudo preliminar, considerou-se que a capacidade máxima dos aviões a serem comprados será sempre preenchida para efeito de planejamento. Os dados de planejamento constam na tabela 1.
Table 1: Tabela 1: Dados operacionais dos aviões
\captionsetup{labelformat=empty}
Tipo de aviões Custo \left(\times 10^{6}\right. US$ ) Receita \left(\times 10^{6}\right. US$ ) Pilotos aptos
Boeing 717 5,1 330 30
Boeing 737-500 3,6 300 20
MD-11 6,8 420 10
A verba disponível para as compras é de US \ 220 milhões. Os pilotos de MD-11 podem pilotar todos os aviões da empresa, mas os demais pilotos só podem ser escalados às aeronaves a que foram habilitados. Cada aeronave necessita de dois pilotos para operar. As oficinas de manutenção têm capacidade equivalente à 40 Boeings 717 . Em termos de esforço de manutenção, um Boeing 737-500 equivale aõõóàçãêàççã3 / 4 de um Boeing 717 e um MD-11 equivale a5 / 3$ de um Boeing 717 .
Formule o modelo de programação linear para este problema, de forma a maximizar o lucro obtido com os aviões adquiridos.
Resolva o problema resultante computacionalmente (Excel, OpenOffice, Matlab ou Matlab + Gurobi).

Passo 1

O enunciado pede duas coisas: formular um modelo de programação linear que maximize o lucro com a compra de aviões e resolver esse modelo numericamente. Dados relevantes extraídos do enunciado:
  • Verba disponível: \$220 milhões.
  • Dados por tipo de aeronave (valores já em milhões de US$ conforme a tabela):
    • Boeing 717: custo \;5{,}1\; e receita \;330\;; pilotos aptos: \;30\;.
    • Boeing 737-500: custo \;3{,}6\; e receita \;300\;; pilotos aptos: \;20\;.
    • MD-11: custo \;6{,}8\; e receita \;420\;; pilotos aptos: \;10\;.
  • Cada aeronave necessita de 2 pilotos para operar.
  • Pilotos de MD-11 podem pilotar qualquer tipo de avião; pilotos dos outros dois tipos só pilotam o seu respectivo tipo.
  • Capacidade de manutenção: equivalente a \;40 Boeing 717.
  • Esforço de manutenção (em unidades de “1 Boeing 717”):
    • Boeing 717: \;1.
    • Boeing 737-500: \tfrac{3}{4}.
    • MD-11: \tfrac{5}{3}.
O que devemos retornar: (i) o modelo matemático (variáveis, função objetivo e restrições) e (ii) a solução numérica que maximiza o lucro.

Passo 2

Definição das variáveis de decisão (escolha natural e fácil de interpretar):
  • Seja \;x_1\; o número de Boeing 717 a comprar/operar.
  • Seja \;x_2\; o número de Boeing 737-500 a comprar/operar.
  • Seja \;x_3\; o número de MD-11 a comprar/operar.
Para tratar a flexibilidade dos pilotos MD-11 (que podem ser alocados a qualquer tipo), introduzimos variáveis de alocação dos pilotos MD-11:
  • Seja \;m_1\; o número de pilotos MD-11 alocados para pilotar Boeing 717.
  • Seja \;m_2\; o número de pilotos MD-11 alocados para pilotar Boeing 737-500.
  • Seja \;m_3\; o número de pilotos MD-11 alocados para pilotar MD-11.
Observações sobre domínio:
  • Todas as variáveis são não-negativas: \;x_i \ge 0\;, \;m_j \ge 0\;.
  • Na prática x_i e m_j são inteiros (não se compram frações de aviões ou de pilotos), então o modelo será um MILP. Se for solicitado relaxar a integralidade, pode-se resolver o LP contínuo; aqui mantemos a ideia inteira por realismo (explicarei a solução inteira abaixo).

Passo 3

Função objetivo (maximizar lucro). Primeiro calculemos o lucro unitário de cada avião (receita menos custo), todos em milhões de US$:
  • Lucro por Boeing 717:
\text{lucro}_1 = 330 - 5{,}1 = 324{,}9.
  • Lucro por Boeing 737-500:
\text{lucro}_2 = 300 - 3{,}6 = 296{,}4.
  • Lucro por MD-11:
\text{lucro}_3 = 420 - 6{,}8 = 413{,}2.
A função objetivo (maximizar lucro total) é então:
\text{max } Z = 324{,}9\,x_1 + 296{,}4\,x_2 + 413{,}2\,x_3.
Explicação didática: cada x_i multiplicado pelo lucro unitário dá a contribuição desse tipo ao lucro total; somando temos o lucro total a maximizar.

Passo 4

Restrição de orçamento (limite de gasto na compra das aeronaves). Os custos estão em milhões, a verba é \;220 (milhões), portanto:
5{,}1\,x_1 + 3{,}6\,x_2 + 6{,}8\,x_3 \le 220.
Interpretação: soma do custo das aeronaves compradas não pode exceder a verba disponível.

Passo 5

Restrição de capacidade de manutenção (em equivalentes de Boeing 717). Usando os fatores dados, a soma ponderada dos aviões não pode exceder \;40:
1\cdot x_1 + \tfrac{3}{4}\,x_2 + \tfrac{5}{3}\,x_3 \le 40.
Explicação didática: cada Boeing 717 consome uma unidade de manutenção; um 737 consome \tfrac{3}{4} dessa unidade; um MD-11 consome \tfrac{5}{3}. A soma deve ficar dentro da capacidade.

Passo 6

Restrições de pilotos. Cada avião exige 2 pilotos. Há pilotos dedicados para 717 ( 30 pilotos) e para 737 ( 20 pilotos), e 10 pilotos MD-11 que podem ser alocados a qualquer tipo. O modelo com variáveis de alocação MD-11 fica linear:
  • Pilotos para Boeing 717: os 30 pilotos 717 só podem pilotar 717; além disso pode-se usar m_1 pilotos MD-11 para ajudar. Assim:
2\,x_1 \le 30 + m_1.
  • Pilotos para Boeing 737-500: os 20 pilotos 737 só pilotam 737; mais os m_2 MD-11 pilots alocados:
2\,x_2 \le 20 + m_2.
  • Pilotos para MD-11: apenas pilotos MD-11 podem pilotar MD-11, logo o número de pilotos MD-11 alocados a MD-11 deve ser suficiente:
2\,x_3 \le m_3.
  • Limite total de pilotos MD-11 disponíveis:
m_1 + m_2 + m_3 \le 10.
Todas essas desigualdades são lineares e explicam quem pode pilotar o quê. Valores m_j são contagens de pilotos MD-11 (inteiros).

Passo 7

Condições de não-negatividade e integralidade:
x_1,\;x_2,\;x_3 \in \mathbb{Z}_{\ge 0},\qquad m_1,\;m_2,\;m_3 \in \mathbb{Z}_{\ge 0}.
Comentário didático: se o professor exigir somente o modelo LP contínuo, as restrições de integralidade podem ser relaxadas; para solução realista (número de aviões e pilotos inteiros) devemos resolver o MILP.

Passo 8

Resumo compacto do modelo (MILP):
\begin{aligned} \text{maximize}\quad & Z = 324{,}9\,x_1 + 296{,}4\,x_2 + 413{,}2\,x_3 \\\ \text{subject to}\quad & 5{,}1\,x_1 + 3{,}6\,x_2 + 6{,}8\,x_3 \le 220,\\\ & x_1 + \tfrac{3}{4}\,x_2 + \tfrac{5}{3}\,x_3 \le 40,\\\ & 2\,x_1 \le 30 + m_1,\\\ & 2\,x_2 \le 20 + m_2,\\\ & 2\,x_3 \le m_3,\\\ & m_1 + m_2 + m_3 \le 10,\\\ & x_1,x_2,x_3,m_1,m_2,m_3 \in \mathbb{Z}_{\ge 0}. \end{aligned}
Explicação curta: objetivo maximiza lucro total; primeiras duas restrições controlam verba e manutenção; três próximas controlam requisito de pilotos tipo-a-tipo; última limita o número total de pilotos MD-11.

Passo 9

Resolução prática (raciocínio e cálculo que substituem a execução num solver; o mesmo raciocínio dá a solução que um MILP resolveria):
  1. Observação prática: o número máximo de aviões que podem voar simultaneamente é limitado pelo total de pilotos disponíveis: 30 + 20 + 10 = 60 pilotos no total, ou seja, no máximo \tfrac{60}{2}=30 aeronaves ao mesmo tempo. Portanto \;x_1 + x_2 + x_3 \le 30 (essa é uma consequência combinada das desigualdades de pilotos).
  2. Para decidir como alocar os pilotos MD-11 (as variáveis m_j), compare o ganho marginal por par de pilotos (já que cada avião usa 2 pilotos). Lucro por par de pilotos para cada tipo:
\begin{aligned} \text{par de pilotos para 717:}&\quad \frac{324{,}9}{2} = 162{,}45,\\\ \text{par de pilotos para 737:}&\quad \frac{296{,}4}{2} = 148{,}2,\\\ \text{par de pilotos para MD-11:}&\quad \frac{413{,}2}{2} = 206{,}6. \end{aligned}
Isso mostra que, em termos de renda por par de pilotos, MD-11 é a mais lucrativa, seguida por 717 e por fim 737. Assim, pilotos escassos (os 10 pilotos MD-11) devem ser preferencialmente alocados para servir MD-11, porque cada dois pilotos MD-11 usados em um MD-11 geram mais lucro do que se estes mesmos pilotos fossem usados para pilotar 717 ou 737.
  1. Alocando os 10 pilotos MD-11 todos para MD-11 resulta em m_3=10, logo por \;2\,x_3 \le m_3 temos x_3 \le 5. Então é natural testar x_3 = 5 (usar todos os pilotos MD-11 para voar MD-11), porque MD-11 tem maior lucro por par de pilotos.
  2. Se x_3=5, então os pilotos MD-11 foram usados integralmente em MD-11 ( m_3=10, m_1=m_2=0). Então os pilotos dedicados restam:
  • Pilotos 717: 30 disponíveis → máximo x_1 \le 15 (cada avião usa 2 pilotos).
  • Pilotos 737: 20 disponíveis → máximo x_2 \le 10.
Com essas máximas naturais (sem realocar MD-11 pilots), podemos usar todos os pilotos de cada categoria para fabricar aviões do seu tipo.
  1. Verificar restrições de manutenção e orçamento para a escolha
    \;x_1=15,\;x_2=10,\;x_3=5.
  • Manutenção:
x_1 + \tfrac{3}{4}x_2 + \tfrac{5}{3}x_3 = 15 + \tfrac{3}{4}\cdot 10 + \tfrac{5}{3}\cdot 5 = 15 + 7{,}5 + 8{,}333\ldots = 30{,}833\ldots \le 40.
Logo a manutenção está satisfatória.
  • Orçamento:
5{,}1\cdot 15 + 3{,}6\cdot 10 + 6{,}8\cdot 5 = 76{,}5 + 36 + 34 = 146{,}5 \le 220.
Logo o orçamento está satisfatório.
  1. Lucro total para essa solução:
Z = 324{,}9\cdot 15 + 296{,}4\cdot 10 + 413{,}2\cdot 5.
Cálculo:
324{,}9\cdot 15 = 4873{,}5, \qquad 296{,}4\cdot 10 = 2964, \qquad 413{,}2\cdot 5 = 2066,
Z = 4873{,}5 + 2964 + 2066 = 9903{,}5.
  1. Argumento de optimalidade (intuitivo e suficiente para este problema):
  • Todos os pilotos estão sendo utilizados: 30 pilotos 717 → 15 Boeing 717; 20 pilotos 737 → 10 Boeing 737-500; 10 pilotos MD-11 → 5 MD-11. Como o total de pilotos é recurso estrangulante (limitando a \le 30 aeronaves) e como alocar os pilotos MD-11 a MD-11 gera maior lucro por par de pilotos do que alocá-los a 717 ou 737, a distribuição que maximiza o uso dos pilotos em suas aeronaves preferidas é a melhor. Qualquer realocação de pilotos MD-11 de MD-11 para outro tipo reduziria o lucro total (comparação por par de pilotos mostra isto).
  • Manutenção e orçamento não estão saturadas, portanto não impõem trocas vantajosas entre tipos: não há ganho em reduzir número de um tipo para comprar outro se isso não libera pilotos (o verdadeiro gargalo).
  • Assim a solução inteira (x_1,x_2,x_3)=(15,10,5) é ótima dentro das restrições inteiras.
Nota didática: um solver MILP (Excel Solver, Gurobi, etc.) confirmaria essa solução; aqui fiz a análise combinando a observação sobre o gargalo de pilotos com a comparação de lucro por par de pilotos para alocar os pilotos MD-11 de maneira ótima.

Resposta

x_1 = 15 (Boeing 717)\n
x_2 = 10 (Boeing 737-500)\n
x_3 = 5 (MD-11)\n
Lucro máximo Z = 9903{,}5 (milhões de US$)

Exercícios relacionados