Você está na página 1de 25

Investigação Operacional

Teodoro Brás

January 10, 2023

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 1 / 24


Objetivos da disciplina

▶ Conhecer o papel da investigação operacional na tomada de decisão;


▶ Identificar um problema de programação linear e as partes que o constituem;
▶ Constuir modelos matemáticos de programação linear, a partir da formulação do problema;
▶ Resolver um problema de programação linear utilizando os distintos métodos, assim como
analisar o consumo de recursos;
▶ Capacidade de obter soluções ótimas de um problema de programação linear fazendo o uso
de análise de sensibilidade, e este quando sofre mudanças nos parâmetros iniciais;
▶ Verificar, por meio da análise pós-otimização, como alterações nos termos independentes,
nos coeficientes da função objetivo, nos coeficientes das restrições, ou como a inclusão de
uma nova variável ou restrição afetam a solução ótima do modelo original.

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 2 / 24


Bibliografia principal

▶ Belfiore, P., & Fávero, L. P. Pesquisa Operacional. Elsevier, 2013.


▶ Hillier Frederick S. , Lieberman Gerald J.; Introduction to Operations Research, 9th
Edition, ISBN: 007-337-629-9 / 978-007-337-629-9
▶ Taha, Hamdy A.; Operations research: an introduction 8th Edition, ISBN:
978-857-605-150-3

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 3 / 24


Bibliografia complementar

▶ Arenales, M., (et al.) - Rio de Janeiro : Elsevier: ABEPRO, 201


▶ Lachtermacher, G. (2016). Pesquisa operacional na tomada de deciões. 5ª Ed. - Rio de
Janeiro, LTC, ISBN 978-85-216-3048-7
▶ Salas, G. H. (2009), Programación lineal aplicada. Bogot : Ecoe Ediciones, ISBN
978-958-648-617-0
A disciplina contém uma sala criada no Google Classroom para interação, onde os livros já
estão disponíveis, siga em:
https://classroom.google.com/c/MjA4MTYzNjgzNjU0?cjc=joqi5hk
Recomenda-se que todo estudante tenha um e-mail da gmail para poder ter acesso aos
conteúdos e outros materiais, mas não descartamos a possibilidade em partilhar na sala de
aulas.

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 4 / 24


Avalição

A avaliação da disciplina é composta por dois testes com ponderação de 40% da média e um
exame final com ponderação de 60%.
Avalição Exercício Cotação Data Cotação
1º Teste aula TP 25% por definir 15 valores
2º Teste aula TP 25% por definir 15 valores
Projeto Final aula TP 40% por definir 10 valores
Exame aula TP 60% por definir 20 valores
Do 1º teste à Projeto final são 40% do valor da média, e do exame são 60% da nota.

∑ Test1 + Test2 + PF ∗ 40% + Exame ∗ 60%
O estudante tem direito a aprovação na disciplina desde que tenha uma nota superior ou igual
a 9.5 valores.

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 5 / 24


Introdução a IO - Surgimento da investigação operacional

A investigação operacional (IO), surgiu na inglaterra durante a segunda guerra mundial (1939 −
1945) para a solução de problemas de natureza logística, tática e de estratégia militar, quando
foi convocado um grupo de cientista para decidir sobre a utilização mais eficaz de recursos
militares limitados, marcando a primeira atividade formal desse campo de estudo
Pelos seus resultados positivos alcançados, fez com que fosse disseminada nos EUA, e em 1947
a equipe liderada por George B. Dantzig deu a origem ao método simplex para a resolução de
problemas de programação linear.
Investigação Operacional consiste na utilização de métodos científicos (modelos matemáticos,
estatísticos e algoritmos computacionais) para a tomada de decisões.

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 6 / 24


Introdução a IO - Conceitos básicos

Um modelo de programação linear é composto por três elementos principais:


a) Variáveis de Decisão e parâmetro;
b) Função objetivo;
c) Restrições
▶ As Variáveis de decisão e Parâmetros
As variáveis de decisão são as incógnitas, ou valores desconhecidos, que serão determinados
pela solução contínua, descretas ou binárias. As variáveis de decisão devem assumir valores não
negativos.
As variáveis contínuas podesm assumir quaisquer valores em intervalo de números reais.
As variáveis discretas assumem valores dentro de um conjunto finito ou uma quantidade enu-
merável de valores;
As variáveis binárias, também conhecidas como dummy, podem assumir apenas dois possíveis
valores: 1 (sim) ou 0 (não)

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 7 / 24


Introdução a IO - Conceitos básicos

Os parâmetros são os valores fixos previamente conhecidos do problema, por exmplo: custo
de variável para produzir determinado tipo de móvel; lucro ou custo por unidade de produto
fabricado; custo por funcionário contratado, etc.
▶ Função Objetivo
A função objetivo é uma função matemática que determina o valore que se pretende alcançar
ou a qualidade da solução, em funçao das variáveis de decisão e dos parâmetro, podendo ser
uma função de maximização (lucro, receita, utilidade, nível de serviço, riqueza, ...) ou de
minimização (custos, risco, erro, ...)
▶ Restrições
As restrições podem ser definidas como sendo um conjunto de equações e inequações que as
variáveis de decisão do modelo devem satisfazer. As restrições são adicionadas ao modelo de
forma a considerar as limitações físicas do sistema, e afetam diretamente os valores das variáveis
de decisão, como por exemplo: a capaicidade máxima de produção; demanda mínima aceitável
de um produto, ...

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 8 / 24


Introdução a IO - Porcesso de modelação e resolução de problemas

A investigação operacional ajuda no processo de tomada de decisão com a utilização de modelos


que possam representar o sistema real. Para modelar um problema, é preciso obedecer os
seguintes passos:
▶ Definição do problema
Nesta fase, define-se claramente os objetivos que se pretende alcançar e as vias para a
resolução do modelo.
▶ Construção do modelo matemático
Um modelo matemático em investigação operacional consiste em um conjunto de equações
(função objetivo e restrições) que tem como objetivo otimizar a eficiência do sistema e
oferecer subsídios para idnetificar as limitações do mesmo.
▶ Resolução do modelo
Nesta fase, utiliza-se diversas técnicas de resolução, como: o método Simplex, gráfico,
algébrico ou analítico e também pode-se recorrer a um software como é o caso do solver
no Excel ou outro.

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 9 / 24


Introdução a IO - Porcesso de modelação e resolução de problemas

▶ Validação do modelo
Um modelo pode ser considerado válido se conseguir representar ou prever, com precisão
aceitável, o comportamento do sistema em estudo.
▶ Implementação dos resultados
Após validar o modelo, é preciso implementar os resultados que devem ser controladas e
acompanhada por uma equipe responsável, de forma a detetar e corrigir possíveis
mudanças nos valores da nova resolução.
▶ Avaliação final
Consiste em verificar se o objetivo final foi ou não alcançado.

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 10 / 24


Programação Linear (PL) - Introdução

Em um problema de programação linear, a função objetivo e todas as restrições do modelo são


representadas por funções lineares, e as variáveis de decisão devem ser contínuas.
O objetivo consiste em maximizar ou minimizar detrminada função linear de variáveis de decisão,
sujeita a um conjunto de restrições representadas por equações ou inequações lineares, incluindo
as de não negatividade das variáveis de decisão.

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 11 / 24


PL - Formulação geral ou construção de um modelo de PL

Os problemas de PL procuram determinar valores ótimos para as variáveis de decisão x1 , x2 , ..., xn


que devem ser contínuas, a fim de maximizar ou minimizar a função objetivo z, sujeita a um
conjunto de m restrições lineares de igualade ou desigualdade.
Soluções factíveis são as soluções que satisfazem todas as restrições, incluindo as de não
negatividade das variáveis de decisão. A solução factíveis que apresenta melhor valor da função
objetivo é chamdo de solução ótima.

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 12 / 24


PL - Formulação geral de um modelo de PL
A formulação geral de um modelo de programação linear pode ser representada matematica-
mente como:
max ou min z = f (x1 , x2 , . . . , xn ) = c1 x1 + c2 x2 + . . . + cn xn
sujeito a:
a11 x1 + a12 x2 + . . . + a1n xn {≤, =, ≥}b1
a21 x1 + a2z x2 + . . . + a2n xn {≤, =, ≥}b2
.. .. .. (1)
. . .
am1 x1 + am2 x2 + . . . + amn xn {≤, =, ≥}bm
a11 x1 + a12 x2 + . . . + a1n xn ≥ 0
onde:
z é a função objetivo;
x j são as variáveis de decisão, principais ou controláveis, j = 1, 2, . . . , n;
ai j é o coeficiente da i-ésima restrição da j-ésima variável, i = 1, 2, . . . , m, j = 1, 2, . . . , n;
bi é a quantidade de recursos disponíveis da i-ésima restrição, i = 1, 2, . . . , m;
c j é a constante ou coeficiente da j-ésima variável da função objetivo, j = 1, 2, . . . , n.
Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 13 / 24
PL - Modelo de programação linear na forma standard (padrão) e
Canónica
Para resolver um problema de programação linear, pelo método analítico ou pelo algoritmo
simplex, a formulação do modelo deve estar na forma standard ou padrão, i.e, obedecendo os
seguintes requisitos:
1 Os termos independentes das restrições devem ser positivos;

2 Todas as restrições devem ser representadas por equações lineares;

3 As variáveis de decisão devem ser não negativas.

Matematicamente é representada como:


max ou min z = f (x1 , x2 , . . . , xn ) = c1 x1 + c2 x2 + . . . + cn xn
sujeito a:
a11 x1 + a12 x2 + . . . + a1n xn = b1
a21 x1 + a2z x2 + . . . + a2n xn = b2
.. .. .. (2)
. . .
am1 x1 + am2 x2 + . . . + amn xn = bm
x j ≥ 0, j = 1, 2, . . . , n
Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 14 / 24
PL - Modelo de programação linear na forma standard (padrão) e
Canónica

A forma matricial de um problema de programçao linear é:


min f (x) = cx
sujeito a:
Ax = b
x≥0
em que:
       
a11 a12 · · · a1n x1 b1 0
 a21 a22 · · · a2n   x2   b2     0 
A= . .. .. ,x =  .. ,b =  ..  , c = c1 c2 · · · cn ,0 =  ..
       
 .. . . . . .

      
am1 am2 · · · amn xn bm 0

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 15 / 24


PL - Modelo de programação linear na forma standard (padrão) e
Canónica

Um problema de programação linear que esteja na forma canónica, as restrições devem ser
desigualdades, a função objetivo pode ser de maximização ou de minimização. Se z for de
maximização, as restrições devem ser do tipo ≤, caso contrário devem ser do tipo ≥.
A forma canónica é representada matematicamente como:

max z = f (x1 , x2 , . . . , xn ) = c1 x1 + ... + cn xn min z = f (x1 , x2 , . . . , xn ) = c1 x1 + . . . + cn xn


sujeito a: sujeito a:

a11 x1 + a12 x2 + . . . . + a1n xn ≤ b1 a11 x1 + a12 x2 + . . . + a1n xn ≥ b1


a21 x1 + a2z x2 + . . . + a2n xn ≤ b2 a21 x1 + a2z x2 + . . . + a2n xn ≥ b2
.. .. .. (3) .. .. .. (4)
. . . . . .
am1 x1 + am2 x2 + . . . + amn xn ≤ bm am1 x1 + am2 x2 + . . . + amn xn ≥ bm
x j ≥ 0, j = 1, 2, . . . , n x j ≥ 0, j = 1, 2, . . . , n

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 16 / 24


PL - Transformação de um problema de PL para forma padrão ou canónica
Um problema de PL, deve estar apresentada numa das forma menciondas anteriormente.
Em algumas vezes, para ajustar o que pedido, é necessário efetuar algumas operações, como as
seguintes:
1. Um problema de maximização pode ser escrita ou transformada em um problema de mini-
mização:
1. max z = f (x1 .x2 , . . . xn ) ⇐⇒ min −z = − f (x1 .x2 , . . . xn ).
Analogamente, um problema de minimização pode ser transformada em um de maximização:
2. min z = f (x1 .x2 , . . . xn ) ⇐⇒ max −z = − f (x1 .x2 , . . . xn )
2. Uma restrição de desigualdade do tipo ≤ pode ser transformada em outra do tipo ≥,
multiplicando ambos os membros por (−1) :

ai1 x1 + ai2 x2 + . . . + ain xn ≤ bi /.(−1) ⇐⇒ −ai1 x1 − ai2 x2 − . . . − ain xn ≥ −bi (5)


Analogamente, uma restrição de desigualdade do tipo ≥ pode ser transformada em outra
do tipo ≤:

ai1 x1 + ai2 x2 + . . . + ain xn ≥ bi /.(−1) ⇐⇒ −ai1 x1 − ai2 x2 − . . . − ain xn ≤ −bi (6)


Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 17 / 24
PL - Transformação de um problema de PL para forma padrão ou canónica

3. Uma restrição de igualdade pode ser transformada em duas restrições de desigualdade:



ai1 x1 + ai2 x2 + . . . + ain xn ≤ bi
ai1 x1 + ai2 x2 + . . . + ain xn = bi ⇐⇒ (7)
ai1 x1 + ai2 x2 + . . . + ain xn ≥ bi

4. Uma restrição de desigualdadedo tipo ≤ pode escrita por meio de uma equação
adicionando uma nova variável não negativa do lado esquerdo (LHS-left hand side)
xk ≥ 0, chamada de variável de folga:

ai1 x1 + ai2 x2 + . . . + ain xn ≤ bi ⇐⇒ ai1 x1 + ai2 x2 + . . . + ain xn + xk = bi (8)


Análogamente, as restrições de desigualdade do tipo ≥ é transformada adicionando uma
nova variável não negativa do lado direito (RHS-right hand side) xk ≥ 0, chamada
variável de excesso:

ai1 x1 + ai2 x2 + . . . + ain xn ≥ bi ⇐⇒ ai1 x1 + ai2 x2 + . . . + ain xn − xk = bi (9)

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 18 / 24


PL - Transformação de um problema de PL para forma padrão ou canónica

5. Se x j não tem restrição, é chamada variável livre, expressa: x j = x1j − x2j , x1j , x2j ≥ 0
Exemplo:
1. Escreve o PL a seguir na forma padrão, a partir de uma função objetivo de minimização.
max z = f (x1 , x2 , x3 , x4 ) = 5x1 + 2x2 − 4x3 − x4
sujeito a:
x1 + 2x2 − x4 ≤ 12
2x1 + x2 + 3x3 ≥ 6
x2 , x3 , x4 ≥ 0
Resolução:
min −z = − f (x1 , x2 , x3 , x4 ) = −5x1 − 2x2 + 4x3 + x4
sujeito a:
x11 − x12 + 2x2 − x4 + x5 = 12
2x11 − 2x12 + x2 + 3x3 − x6 = 6
x11 , x12 , x2 , x3 , x4 , x5 , x6 ≥ 0

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 19 / 24


PL - Transformação de um problema de PL para forma padrão ou canónica

Exemplo:
2. Transforme o problema a seguir na forma canónica max z = f (x1 , x2 , x3 ) = 3x1 + 4x2 + 5x3
sujeito a:
2x1 + 2x2 + 4x4 ≥ 320
3x1 + 4x2 + 5x3 = 580
x1 , x2 , x3 ≥ 0
Resolução:
max z = f (x1 , x2 , x3 ) = 3x1 + 4x2 + 5x3
sujeito a:
−2x1 − 2x2 − 4x4 ≤ −320
−3x1 − 4x2 − 5x3 ≤ −580
3x1 + 4x2 + 5x3 ≥ 580
x1 , x2 , x3 ≥ 0

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 20 / 24


PL - Resolução pelo método gráfico de um problema de PL

Um problema simples de programação linear que envolve duas variáveis de decisão pode ser
facilmente resolvido de forma gráfica. Os problemas com até três variáveis de decisão também
podem ser resolvidos de forma gráfica, porém, com complexidade maior.
Na resolução gráfica de um modelo de progrmação linear, primeiramente, determina-se o espaço
de soluções viáveis ou região factível em um plano cartesiano.
Definição (solução viável ou factível): Uma solução viável ou factível é aquela que satisfaz
todas as restrições do modelo, inclusive as de não negatividade. O conjunto de todas as soluções
factíveis é chamado região viável ou factível.
Se determinada solução não satisfazer uma das restrições do modelo, a mesma é chamada
solução inviável ou infactível.
De seguida, consiste em determinar a solução ótima do modelo, isto é, solução factível que
apresenta o melhor valor da função objectivo. Para um problema de maximização, determindo
o conjunto de soluções viáveis, a solução ótima é aquela que fornece o maior valor à função
objectivo dentro desse conjunto. E para um problema de minimização, a solução ótima é aquela
que minimiza a função objectivo.

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 21 / 24


PL - Resolução pelo método gráfico de um problema de PL

O conjunto de soluções factíveis de um problema de programção linear é representado por K.


Daí surge o o seguinte teorema:
Teorema: O conjunto K é convexo.
Definição: Um conjunto é convexo quando todos os segmentos de reta que unem dois pontos
quaisquer de K estão contidos em K. Um conjunto convexo é fechado se ele compreende a sua
fronteira.

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 22 / 24


Exemplo problema de maximização de PL com uma única solução

1. Considere o seguinte problema de maximização de programação linear:


max z = 6x1 + 4x2
sujeito a:
2x1 + 3x2 ≤ 18
5x1 + 4x2 ≤ 40
x1 ≤6
x2 ≤ 8
x1 , x2 ≥ 0
Determinar o conjunto de soluções factíveis, além da solução ótima do modelo.
O procedimento gráfico inclui as seguintes etapas:
1 Determinar a região de soluções viáveis;
2 Determinar a solução ótima entre todos os pontos viáveis da região de soluções.

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 23 / 24


Exemplo problema de maximização de PL com uma única solução

Resolução:

Logo a solução ótima do modelo é:


x1 = 6 e x2 = 2, e a função atinge o seu máximo em z = 44

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 24 / 24


1o

Teodoro Brás (ISPM) IO - Aula 01 January 10, 2023 24 / 24

Você também pode gostar