Alocação Orçamental
Considere um problema de alocação orçamental, onde 30 milhões de reais estão disponíveis para o conjunto de projetos listados abaixo. O investimento necessário em cada projeto, juntamente com o retorno esperado em termos de utilidade também é dada.
Projeto Custo (milhões reais) Utilidade esperada
Apoio tempos livres 6 18
Segurança rodoviária 18 16
Redução da criminalidade 10 12
Extensão rodoviária 9 25
Apoio Social 4 14
a) O problema consiste em definir os projetos que devem ser financiados, de forma a maximizar a utilidade total esperado sem exceder as limitações orçamentais.
b) Agora, suponha que novas condições de seleção dos projetos. Escreva as restrições para essas condições:
i. Quaisquer dois dos quatro primeiros projetos devem ser realizados.
ii. Os projetos 1 e 3 devem ser efetuados simultaneamente, ou nenhum deles deve ser realizado.
iii. O projeto 2 será realizada apenas se o projeto 4 for realizada mas o projeto 4 não está condicionado à realização do projeto 2 (ou seja, pode realizar-se o projeto de 4 sem projeto 2 , mas não se pode realizar o projeto de 2 sem que projeto 4 seja realizado).
iv. Os projetos 1 e 5 NÃO poderão ser executados simultaneamente.

Passo 1

Beleza, vamos resolver esse exercício de Alocação Orçamental juntos! A ideia aqui é decidir quais projetos financiar com um orçamento de 30 milhões de reais para maximizar a utilidade total esperada. Para isso, vamos precisar usar conceitos de Programação Linear, onde definimos variáveis para representar cada projeto, uma função objetivo para maximizar a utilidade e restrições para não ultrapassar o orçamento.

Passo 2

Primeiro, vamos definir uma variável para cada projeto que indica se ele será financiado ou não. Podemos usar variáveis binárias, onde:
  • = 1 se o projeto “Apoio tempos livres” for financiado, 0 caso contrário.
  • = 1 se o projeto “Segurança rodoviária” for financiado, 0 caso contrário.
  • = 1 se o projeto “Redução da criminalidade” for financiado, 0 caso contrário.
  • = 1 se o projeto “Extensão rodoviária” for financiado, 0 caso contrário.
  • = 1 se o projeto “Apoio Social” for financiado, 0 caso contrário.

Passo 3

Agora, vamos montar a função objetivo, que é o que queremos maximizar. Nesse caso, queremos maximizar a utilidade total esperada dos projetos financiados. Então, a função objetivo será:
Aqui, cada coeficiente representa a utilidade esperada de cada projeto.

Passo 4

Em seguida, precisamos considerar a restrição orçamentária para garantir que não gastaremos mais do que os 30 milhões de reais disponíveis. A restrição fica assim:
Cada termo representa o custo de cada projeto multiplicado pela sua variável correspondente.

Passo 5

Além da restrição orçamentária, nossas variáveis são binárias, então temos:
Isso significa que cada projeto ou é financiado (1) ou não é financiado (0).

Passo 6

Agora, para a parte b) do exercício, precisamos adicionar novas restrições com base nas condições de seleção dos projetos.

Passo 7

Vamos detalhar cada condição:
i. Quaisquer dois dos quatro primeiros projetos devem ser realizados.
Isso significa que pelo menos dois dos projetos 1, 2, 3 ou 4 devem ser financiados. A restrição fica:
ii. Os projetos 1 e 3 devem ser efetuados simultaneamente, ou nenhum deles deve ser realizado.
Isso é uma condição de implicação mútua. Podemos representar isso com duas inequações:
Ou, alternativamente:
iii. O projeto 2 será realizado apenas se o projeto 4 for realizado, mas o projeto 4 pode ser realizado sem o projeto 2.
Isso é uma condição de implicação simples. Se , então . A restrição fica:
iv. Os projetos 1 e 5 NÃO poderão ser executados simultaneamente.
Isso significa que não podemos ter ambos os projetos 1 e 5 financiados ao mesmo tempo. A restrição fica:

Passo 8

Agora, juntando tudo, nosso modelo de Programação Linear com as novas restrições fica assim:

Resposta

Seguindo esse modelo, você pode usar técnicas de Programação Linear para determinar quais projetos financiar e maximizar a utilidade total dentro do orçamento disponível.

Exercícios relacionados