curso-pesquisa-operacional-i

Modelagem em Pesquisa Operacional


Sobre esse material

Esses slides foram preparados com base em diversos materiais da literatura, em especial:

Aplicações de PO


Algumas aplicações

O problema da mistura


Problema da mistura


Problema da mistura - Ração


Problema da mistura - Ração


Problema da mistura - Ração

       
Nutrientes Ingredientes   Qtde
  A1 A2 Mínima
Vitamina A 2 2 7
Vitamina B 3 2 9
Proteína 1 0 1
Custos ($R$/kg$) 65 30 $\;$

Problema da mistura - Pergunta-se


Problema da mistura - O que decidir?


Problema da mistura - Decidir para que?


Modelagem do Exemplo 1

\(\min z(x_1 , x_2 ) = 65x_1 + 30x_2\) \(2x_1 + 3x_2 \geq 7\) \(3x_1 + 2x_2 \geq 9\) \(1x_1 + 0x_2 \geq 1\) \(x_1 \geq 0, x_2 \geq 0\)


Visualização do Modelo

Próximas Imagens de [1]


Problema da mistura - Ração


Problema da mistura - Ração


Problema da mistura - Ração


Problema da mistura - Ração


Problema da mistura - Ração


Problema da mistura - Ração


Problema da mistura - Ração


Problema da mistura - Ração


Problema da mistura - Ração


Outras aplicações


OUTRAS APLICAÇÕES - Composição de areias para filtro


Exemplo 2 - Barragem de concreto


Dados do problema da barragem de concreto

         
Faixas gran. Agregados Graúdos     Comp. Ideal(%)
^ Britas Seixos Pedras ^
2,4-19 0 0,05 0,20 0,10
19-38 0,10 0,35 0,78 0,20
38-76 0,20 0,60 0,02 0,35
76-152 0,70 0 0 0,35
Custos $R$6$ $R$7$ $R$18$ $\;$

Variáveis de decisão:
$x_1$ = qde de britas graníticas ($m^3$);
$x_2$ = qde de seixos rolados ($m^3$);
$x_3$ = qde de pedras britadas comercial ($m^3$).


Modelagem do exemplo do problema da barragem de concreto

\[\min z(x 1 , x 2 , x 3 ) = 6x 1 + 7x 2 + 18x 3\]
         
  0,05x2 + 0,20x3 $\geq$ 0,10
0,10x1 + 0,35x2 + 0,78x3 $\geq$ 0,20
0,20x1 + 0,60x2 + 0,02x3 $\geq$ 0,35
0,70x1     $\geq$ 0,35
x1 + x2 + x3 $=$ 1
\[x1 \geq 0, x2 \geq 0, x3 \geq 0\]

O PROBLEMA DE PLANEJAMENTO DA PRODUÇÃO


O Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção

       
Matéria Prima Produto   Estoque
^ P1 P2 ^
Farinha 1 3 60
Fermento 2 0 30
Ovos 0 1 18
Manteiga 3 1 55
Custos ($R$/kg$) 22 20 $\;$

Exemplo 1 - Problema de Produção


Modelagem do Exemplo 1 - Problema de Produção

Modelo Matemático:

\[\max z(x_1 , x_2 ) = 22x_1 + 20x_2\]

\(1 x1 + 3 x2 \leq 60\) \(2 x1 + 0 x2 \leq 30\) \(0 x1 + 1 x2 \leq 18\) \(3 x1 + 1 x2 \leq 55\)

\[x1 \geq 0, x2 \geq 0\]

Visualização do Modelo

Próximas Imagens de [1]


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 2 - Produção de geladeiras


Exemplo 1 - Produção de geladeiras

Variáveis de decisão:

$x_1$ = quantidade de geladeiras do modelo luxo a ser produzida por mês.
$x_2$ = quantidade de geladeiras do modelo básico a ser produzida por mês.


Modelo Matemático

Modelo Matemático:

\[\max z(x_1 , x_2 ) = 100x_1 + 50x_2\]

\(10x 1 + 8x 2 \leq 25000\) \(x 1 + x 2 \leq 4500\) \(0 \leq x 1 \leq 1500\) \(0 \leq x 2 \leq 6000\)


Visualização do Modelo

Próximas Imagens de [1]


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Exemplo 1 - Problema de Produção


Dica para Cálculo do Gradiente

Lembramos que a direção e sentido de máximo crescimento de uma função $f$ é determinada por seu gradiente $\nabla f(x) = \left( \frac{\partial f(x)}{\partial x_1}, \frac{\partial f(x)}{\partial x_2}, …, \frac{\partial f(x)}{\partial x_n} \right)$.

Assim, para $\max z(x_1 , x_2 ) = 100x_1 + 50x_2$, temos $\nabla z(x)=(100,50)$. Caso fosse minimização, poderíamos transformar o problema em maximização (e obter valores negativos no vetor gradiente).

Naturalmente, o feixe de retas da função objetivo é perpendicular ao vetor gradiente.


Visualização Gráfica com Plotly

O que significam as três linhas vermelhas?

```python {cmd=true hide=true} from figs.fig_plotly_line1 import draw_fig fig = draw_fig(‘figs/fig_plotly_model3.png’)

<!-- @import "figs/fig_plotly_model3.png" -->

<!-- END COMMENT -->

<!-- BEGIN COMMENT TO revealjs -->
```{.plotly_python caption="Visualização Gráfica" width=350}
from figs.fig_plotly_line1 import draw_fig
fig = draw_fig('figs/fig_plotly_model3.png')
# nocache 8

Lista de Exercícios

A lista de exercícios está disponibilizada no site.