A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

INTRODUÇÃO À PESQUISA OPERACIONAL ** Programação Linear – Parte 1 ** Profa. Vitória Pureza 2º Semestre.

Apresentações semelhantes


Apresentação em tema: "INTRODUÇÃO À PESQUISA OPERACIONAL ** Programação Linear – Parte 1 ** Profa. Vitória Pureza 2º Semestre."— Transcrição da apresentação:

1 INTRODUÇÃO À PESQUISA OPERACIONAL ** Programação Linear – Parte 1 ** Profa. Vitória Pureza 2º Semestre

2 Última Aula Pesquisa Operacional Abordagem científica para tomada de decisões que procura determinar como projetar e operar um sistema, geralmente sob condições de recursos escassos Tem como conceito fundamental, a construção e utilização de modelos de programação matemática (também chamados de otimização) que capturam os elementos essenciais do sistema que se deseja representar Os modelos podem ser resolvidos por meio de diversas técnicas e métodos disponíveis na literatura Nas próximas aulas vamos tratar modelos e métodos de otimização para problemas de Programação Linear

3 Roteiro Exemplo passo a passo do processo de modelagem Resolução de Exercícios de Modelagem em classe Implicações da Premissa de Linearidade Resolução Gráfica de Problemas de 2 Variáveis Forma Padrão de Problemas de Otimização Transformação de Problemas na Forma Padrão

4 Um Problema de Planejamento da Produção Geppeto produz dois tipos de brinquedos de madeira : bonecos e trens. Um boneco é vendido por $27, gasta $10 de matéria-prima e $14 de mão- de-obra. Um trem é vendido por $21, gasta $9 de matéria-prima e $10 de mão-de-obra. A manufatura desses brinquedos requer duas operações : marcenaria e acabamento. Um boneco requer 2 horas de acabamento e 1 hora de marcenaria. Um trem requer 1 hora de acabamento e 1 hora de marcenaria. A cada semana, Geppeto pode obter toda a matéria-prima necessária para suas necessidades. Entretanto, apenas 100 horas de acabamento e 80 horas de marcenaria estão disponíveis. A demanda por trens é ilimitada mas no máximo 40 bonecos são vendidos por semana. Ajude a Geppeto a planejar a produção de bonecos e trens de forma que seu lucro líquido seja máximo. Geppeto.xls

5 Passos para Modelagem de Programação Matemática  Defina o objetivo do problema. Colete os dados associados  Defina os fatores que afetam o alcance do objetivo do problema. Colete os dados associados  Elabore uma representação informal do problema  Elabore um modelo de programação matemática do problema

6  Objetivo do Problema Maximizar lucro semanal = { receita de vendas - custos de mão-de-obra - custos de matéria-prima } com bonecos e trens ProdutoReceita ($) /unidade Mão de obra ($) /unidade Matéria-prima ($) /unidade Boneco271410 Trem21109

7  Fatores que Afetam o Alcance do Objetivo Limitações de capacidade produtiva Limitações de demanda Produto Horas requeridas/unidade MarcenariaAcabamento Boneco12 Trem11 Horas semanais disponíveis80100 ProdutoDemanda máxima mensal Boneco40

8  Representação Informal do Problema Deseja-se Maximizar lucro semanal = {receita - gastos de mão-de-obra - gastos de matéria-prima} com bonecos e trens, sujeito às seguintes restrições: 1.as horas semanais de marcenaria para fabricação dos produtos não podem exceder a disponibilidade semanal 2.as horas semanais de acabamento para a fabricação dos produtos não podem exceder a disponibilidade semanal 3.a quantidade de bonecos produzidos semanalmente não pode exceder sua demanda semanal

9  Formulação do Modelo de Programação Matemática x 1 = número de bonecos produzidos/semana x 2 = número de trens produzidos/semana b) Função Objetivo (FO) Maximização do lucro ou minimização do custo escrito como alguma função das variáveis de decisão. Max { 3x 1 + 2x 2 } ($/semana) a) Variáveis de Decisão Descrevem completamente as decisões a serem feitas Estão associadas ao objetivo do problema

10  Formulação do Modelo de Programação Matemática 2x 1 + x 2 ≤ 100 (horas/semana) Máximo de 80 horas de marcenaria disponíveis por semana x 1 + x 2 ≤ 80 (horas/semana) c) Restrições Máximo de 100 horas de acabamento disponíveis por semana Máximo de 40 bonecos a serem produzidos por semana x 1 ≤ 40 (unidades/semana)

11  Formulação do Modelo de Programação Matemática x 1, x 2 ≥ 0 (unidades/semana) d) Restrições de sinal apenas valores não negativos

12 Modelo de Programação Linear para o Problema de Geppeto Variáveis de Decisão: x 1 = número de bonecos produzidos por semana x 2 = número de trens produzidos por semana Max 3x 1 + 2x 2 sujeito a: 2x 1 + x 2 ≤ 100 (acabamento) x 1 + x 2 ≤ 80 (marcenaria) x 1 ≤ 40 (demanda de bonecos) x 1 ≥ 0 (sinal) x 2 ≥ 0 “sujeito a” : valores de x 1 e x 2 precisam satisfazer todas as restrições

13 Função Linear f(x 1,x 2,...,x n ) é uma função linear se e somente se para algum conjunto de constantes c 1, c 2,.., c n : f(x 1,x 2,...,x n ) = c 1 x 1 + c 2 x 2 +... + c n x n Desigualdades Lineares Para qualquer função linear f(x 1,x 2,...,x n ) e qualquer número b, f(x 1,x 2,...,x n ) ≥ b e f(x 1,x 2,...,x n ) ≤ b são desigualdades lineares o Problema Linear (PL) o Procura-se maximizar (ou minimizar) uma função linear das variáveis de decisão o Os valores das variáveis de decisão precisam satisfazer um conjunto de restrições o Cada restrição precisa ser uma igualdade linear ou uma desigualdade linear o Uma restrição de sinal está associada a cada variável

14 Região Factível de um PL Conjunto de todas as soluções que satisfazem todas as restrições Solução Ótima de um PL Solução na região factível com o maior valor de função objetivo (problemas de maximização). Solução na região factível com o menor valor de função objetivo (problemas minimização) ESPAÇO DE SOLUÇÕES FACTÍVEIS SOLUÇÃO ÓTIMA

15 Implicações da Premissa de Linearidade 1.A contribuição de cada variável de decisão à função objetivo e ao lado esquerdo de cada restrição é – proporcional ao valor da variável de decisão (premissa de proporcionalidade) – independente dos valores das outras variáveis de decisão (premissa de aditividade) 2.Cada variável de decisão pode assumir valores não inteiros ( premissa de divisibilidade ou fracionamento) 3.Admite-se que cada dado de entrada é conhecido com certeza ( premissa de certeza )

16 Max 3x 1 + 2x 2 sujeito a: 2x 1 + x 2 ≤ 100 x 1 + x 2 ≤ 80 x 1 ≤ 40 x 1, x 2 ≥ 0 Uma solução particular para este problema x 1 = 1, x 2 = 0 é factível, pois satisfaz todas as restrições. Para esta solução, a função objetivo tem valor f(1, 0) = 3 Outra solução factível é x 1 = 1,5, x 2 = 3 e o valor da função objetivo é f(1,5; 3) = 10,5  A 2ª solução é melhor do que a 1ª Existe uma solução melhor que esta ?

17 Resolução Gráfica de PLs de 2 Variáveis 1. Identificar a região factível 2x1 + x2 ≤ 100 x1 + x2 ≤ 80 x1 ≤ 40 x1, x2 ≥ 0 2x1 + x2 = 1002x1 + x2 ≤ 100

18 Resolução Gráfica de PLs de 2 Variáveis 2. Identificar a solução ótima 2x 1 + x 2 ≤ 100 x 1 + x 2 ≤ 80 x 1 ≤ 40 Max 3x 1 + 2x 2 Linhas Isolucro Ponto cruzando eixo x 1 : (10, 0)  f=3*10 + 2*0=30 Ponto cruzando eixo x 2 com f=30 :  f=3*0 + 2* x 2 =30  x 2 = 15 Logo, o ponto é (0,15) f = 30 f = 90 Solução ótima x=(20,60) f=180 x 1, x 2 ≥ 0 Outra Linha Isolucro Ponto cruzando eixo x1: (30, 0)  f=90 Ponto cruzando eixo x2 com f=90: (0,45)

19 Resolução Gráfica de PLs de 2 Variáveis Alternativamente, note que: f=3x 1 + 2x 2, x 2 =f – (3x 1 /2), ou seja, o coeficiente angular de qualquer linha isolucro é igual a -3/2 (ou -1,5) 2x 1 + x 2 ≤ 100 x 1 + x 2 ≤ 80 x 1 ≤ 40 Max 3x 1 + 2x 2 Solução ótima x=(20,60) f=180 x 1, x 2 ≥ 0 fo = 30

20 Conjuntos Convexos, Pontos Extremos e PL Conjunto convexo : conjunto S de pontos onde o segmento de reta unindo quaisquer par de pontos em S está totalmente contido em S Ponto extremo : ponto P em um conjunto convexo S onde cada segmento de reta contido completamente em S e que contém o ponto P, tem P como ponto final A E B C D A B

21 Resultado Importante A região factível para qualquer PL é um conjunto convexo A região factível para qualquer PL tem um número finito de pontos extremos Qualquer PL que tenha uma ou mais soluções ótimas*, tem um ponto extremo que é ótimo EXISTE UMA SOLUÇÃO ÓTIMA NO CONJUNTO DOS PONTOS EXTREMOS

22 Pontos Extremos no Problema de Geppeto 2x1 + x2 ≤ 100 x1 + x2 ≤ 80 x1 ≤ 40 Max 3x1 + 2x2 Solução ótima x1, x2 ≥ 0

23 1.Uma única solução ótima: a linha isolucro (isocusto) toca um único ponto Casos de Programação Linear

24 2.Soluções ótimas alternativas ou múltiplas: a linha isolucro (isocusto) toca uma face da região factível, resultando em um número infinito de soluções ótimas (todas com o mesmo valor !) Casos de Programação Linear

25 3.PL infactível: ausência de região factível (faz-se apenas o passo 1 da resolução gráfica) Casos de Programação Linear

26 4.PL ilimitado: a linha isolucro (isocusto) não converge pois há sempre soluções melhores que as atuais (não há solução ótima finita!) Casos de Programação Linear

27  Lista 2 (Resolução gráfica de PLs de 2 variáveis) Encontre graficamente a(s) solução(ões) ótima(s) dos três primeiros PLs (se houver) da lista 1, citando que caso cada PL representa. Qual a solução do exercício 3 se este for de minimização ?

28 Problemas com mais de 2 Variáveis A resolução gráfica não pode ser aplicada (seu propósito é meramente didático) Maioria dos problemas de interesse: centenas, milhares e até milhões de variáveis Como resolver tais problemas ? X

29 Forma Padrão de Problemas de Otimização A seguinte forma para representar um problema de otimização linear é denominada forma padrão: Minimizar f(x 1, x 2, , x n ) = c 1 x 1 + c 2 x 2 +  + c n x n a 11 x 1 + a 12 x 2 +  + a 1n x n = b 1 a 21 x 1 + a 22 x 2 +  + a 2n x n = b 2  a m1 x 1 + a m2 x 2 +  + a mn x n = b m x 1 ≥ 0, x 2 ≥ 0, , x n ≥ 0 Todo problema de otimização linear pode ser escrito na forma padrão

30 Um problema na forma padrão pode ser escrito em notação matricial: Minimizar f(x) = c T x Ax = b x ≥ 0 onde: A = é uma matriz m  n, chamada matriz dos coeficientes (ou matriz tecnológica) c T = é o vetor de custos x T = é o vetor das n variáveis ou incógnitas b T = é o vetor dos m termos independentes ou de recursos 0 T = é o vetor cujos elementos são todos iguais a 0

31 Exemplo: Seja o problema de otimização linear na forma padrão Minimizar f(x 1, x 2, x 3 ) = 2x 1  x 2 + 4x 3 x 1 + 2x 2 + x 3 = 3 x 2 + 2x 3 = 4 x 1 ≥ 0, x 2 ≥ 0, x 3 ≥ 0 Note que: m=2 (2 restrições), n=3 (3 variáveis), c 1 = 2, c 2 =  1, c 3 = 4, a 11 =1, a 12 =2, a 13 =1, a 21 =0, a 22 =1, a 23 =2, b 1 =3, b 2 =4 O problema pode ser escrito na forma matricial cTcT x A b 0

32 Transformação de Problemas na Forma Padrão Várias outras formas de problemas de otimização linear aparecem em problemas reais: quando se deseja maximizar a função objetivo quando existem restrições de desigualdade quando uma ou mais variáveis não têm a condição de não- negatividade Como reescrever estes problemas na forma padrão ?

33 Problemas de Maximização Obter uma solução ótima que maximiza a função objetivo é equivalente a obter uma solução factível x * = tal que f(x * )  f(x) para toda solução x factível Multiplicando-se esta desigualdade por  1, tem-se de forma equivalente:  f(x * )   f(x) para toda solução x factível Portanto, caso o problema seja de maximizar f(x), pode-se tratar, em seu lugar, o problema equivalente de minimizar  f(x)

34 Restrições de Desigualdade Se as restrições do problema forem desigualdades (ao invés de igualdades), o problema pode ser convertido à forma padrão com o auxílio de novas variáveis Suponha que a restrição i seja dada por: a i1 x 1 + a i2 x 2 +  + a in x n ≤ b i (por exemplo, 3x 1 + 4x 2 - x 3 ≤ 7) Note que podemos escrever a desigualdade acima como uma igualdade somando uma nova variável x n+1 não negativa no lado esquerdo da restrição. X n+1 representa a folga de a i1 x 1 + a i2 x 2 +  + a in x n em relação a b i : a i1 x 1 + a i2 x 2 +  +a in x n + x n+1 = b i tal que x n+1  0 (por exemplo, 3x 1 +4x 2  x 3 + x 4 = 7, x 4  0)

35 Restr ições de Desigualdade Analogamente, se a restrição i for da forma: a i1 x 1 + a i2 x 2 +  + a in x n ≥ b i (por exemplo, 3x 1 +4x 2  x 3 ≥ 7) basta subtrair uma variável x k (o que sobra para a igualdade) no lado esquerdo da desigualdade para transformá-la em igualdade, sendo x k  0 A desigualdade é então escrita por: a i1 x 1 + a i2 x 2 +  +a in x n – x k = b i (por exemplo, 3x 1 +4x 2  x 3 – x 4 = 7, x 4  0) Essas variáveis adicionais, chamadas de variáveis de folga, são muito úteis, pois deixam todas as restrições em forma de igualdade, mantendo-se as condições de não-negatividade No caso de desigualdade do tipo , a variável introduzida é também chamada de variável de excesso

36 Variáveis Livres No caso de existir alguma variável x i no problema não restrita de sinal, chamada variável livre (ou irrestrita), pode-se substituir esta variável por duas novas variáveis não negativas e obter um problema equivalente na forma padrão com Substituindo a variável livre por, o problema resultante tem todas as variáveis não-negativas, conforme desejado

37 Exercícios: Reescreva os seguintes problemas de otimização linear na forma padrão 1) Maximizar f(x 1, x 2, x 3 ) = 2x 1  x 2 + 4x 3 x 1 + 2x 2 + x 3 = 3 x 2 + 2x 3 = 4 x 1 ≥ 0, x 2 ≥ 0, x 3 ≥ 0 2) Minimizar f(x 1, x 2, x 3 ) = 2x 1 – 3x 2 + 3x 3 x 1 + 2x 2 – x 3  3 –2x 1 + x 2 + x 3  –1 x 1  0, x 2  0, x 3  0 3) Minimizar f(x 1, x 2, x 3, x 4, x 5 ) = 2x 1 – 3x 2 + 3x 3 x 1 + 2x 2 – x 3 – x 4 = 3 –2x 1 + x 2 + x 3 +x 5 = –1 x 1 livre, x 2  0, x 3  0, x 4  0, x 5  0

38 Próxima Aula Leitura do capítulo 2 (seções 2.5 a 2.9) da referência 1


Carregar ppt "INTRODUÇÃO À PESQUISA OPERACIONAL ** Programação Linear – Parte 1 ** Profa. Vitória Pureza 2º Semestre."

Apresentações semelhantes


Anúncios Google