UDESC Universidade do Estado de Santa Catarina. DCC Departamento de Ciência da Computação. Avaliação: 3 (três) provas ( P1*0,4 + P2*0,3 + P3*0,3 )

Tamanho: px
Começar a partir da página:

Download "UDESC Universidade do Estado de Santa Catarina. DCC Departamento de Ciência da Computação. Avaliação: 3 (três) provas ( P1*0,4 + P2*0,3 + P3*0,3 )"

Transcrição

1 UDESC Universidade do Estado de Santa Catarina DCC Departamento de Ciência da Computação Curso: TADS Disciplina: Pesquisa Operacional - PES SI Notas de Aula Avaliação: 3 (três) provas ( P1*0,4 + P2*0,3 + P3*0,3 ) Referências bibliográficas: 1.) Taha, H.A. Pesquisa Operacional, 8 edição, Pearson, 2008; 2.) EHRLICH, Pierre Jacques. Pesquisa operacional: Curso introdutório. 7. ed. São Paulo: Atlas, c1991; 3.) SHAMBLIN, James E; STEVENS, G. T. Pesquisa operacional: uma abordagem básica. São Paulo: Atlas, ) Apostila Programação Linear professor Maurício Pereira dos Santos. Instituto de Matemática e Estatística. Universidade do Estado do Rio de Janeiro. 2000

2 I.) INTRODUÇÃO I.1) O QUE É PESQUISA OPERACIONAL? METODOLOGIA DE ESTRUTURAR PROCESSOS APARENTEMENTE NÃO ESTRUTURADOS POR MEIO DA CONSTRUÇÃO DE MODELOS. UTILIZA UM CONJUNTO DE TÉCNICAS QUANTITATIVAS COM O INTUITO DE RESOLVER OS ASPECTOS MATEMÁTICOS Pierre Ehrlich-Pesquisa Operacional Curso Introdutório, Editora Atlas, 1991 A PO É aplicada à problemas que estão relacionados à gestão de operações de uma empresa ou organização. Para isto utiliza um procedimento sistêmico para solução dos problemas, buscando uma solução que seja ótima para o problema;

3 Objetivo do curso: Capacitar o aluno na formulação e resolução de problemas clássicos de pesquisa operacional. I.2) Aplicações da PO: Programação Matemática Linear (mais utilizada) Não Linear Inteira Modelos de rede Transportes Designação Grafos Teoria das Filas Modelos de Simulação Modelos de Estoques Programação Dinâmica

4 I.3) Fases de implementação da PO: a.) Definição do problema. Identificar os três elementos de um problema de decisão:. descrição das alternativas de decisão;. determinação do objetivo do estudo;. especificação das limitações sob as quais o sistema modelado funciona. b.) Construção do modelo. Tentativa de traduzir a definição do problema em relações matemáticas. Um modelo é sempre uma aproximação do mundo real. c.) Validação do modelo. Verifica se o modelo proposto faz ou não o que diz fazer. d.) Implementação da solução.

5 O MODELO GERAL DE PO PODE SER ORGANIZADO NO SEGUINTE FORMATO: MAXIMIZAR ou MINIMIZAR FUNÇÃO OBJETIVO SUJEITO Á RESTRIÇÕES Exemplo_01: Um fabricante produz dois tipos de ligas ( A e B) e deseja MAXIMIZAR a receita bruta de sua empresa. A tabela abaixo ilustra as composições das ligas, seus preços, limitações na disponibilidade de matéria-prima. atividades itens Liga_tipo_A Liga_tipo_B Matéria-prima disponivel Cobre Zinco Chumbo Preço unitário Venda $30 $50

6 a.) IDENTIFICAR QUAIS SÃO AS VARIÁVEIS DE DECISÃO Seja Xa a quantidade de liga A a ser produzida; Seja Xb a quantidade de liga B a ser produzida. b.) IDENTIFICAR A FUNÇÃO OBJETIVO: MAX Z = 30*Xa + 50*Xb c.) IDENTIFICAR AS RESTRIÇÕES: 2*Xa + Xb <= 16 (cobre) Xa + 2*Xb <= 11 ( zinco) RESTRIÇÕES DE DISPONIBILIDADE DE RECURSOS Xa + 3*Xb <= 15 ( chumbo) Xa >= 0 ; Xb >= 0 ( não pode fabricar quantidades negativas)

7 Resolução do problema de programação linear: Analise o gráfico a ser apresentado abaixo: X2 Chumbo Zinco X1 = 7 ; X2 = 3 ; Z = 310 Ponto Ótimo Regiao Permissivel Cobre X1 As inequações de restrição constituem semi-planos no espaço, e a intersecção entre elas define o espaço de solução; A função objetivo Z que desejamos MAXIMIZAR constitui uma família de retas paralelas; Devemos encontrar, no espaço de solução, aquela que proporciona o valor ótimo da função objetivo De todas estas retas escolhemos a que maximiza Z e tem pelo menos um ponto pertencente à região permissível.

8 Traçando a paralela mais alta possível, que toque pelo menos um ponto no espaço solução. Este ponto corresponde à solução ótima desejada. O ponto ótimo é sempre um dos vértices do espaço solução. Substituindo os valores, Xa=7 e Xb=2 obtidos, nas restrições observamos que todo o cobre e todo o zinco disponíveis são utilizados! Entretanto, sobram duas unidades de chumbo não utilizadas! Exemplo_02: Resolver graficamente o seguinte problema de programação linear MAX Z = X1 + 2*X2 -X1 + 3*X2 <= 9 X1 2*X2 <= 0 2*X1 + X2 <= 10 2*X1 + X2 >= 5 X1 >= 0 ; X2 >= 0.

9 Exemplo_03: Resolver graficamente o seguinte problema de programação linear MAX Z = 2*X1 + X2 X1 + 4*X2 <= 24 X1 + 2*X2 <= 14 2*X1 X2 <= 8 X1 X2 <= 3 X1 >= 0 ; X2 >= 0. Resposta : Z = 16.

10 Exemplo_04: Uma empresa fabrica produtos 1 e 2. Cada produto requer um tempo de processamento em cada um dos três departamentos da empresa. Os lucros de cada produto são respectivamente $1,00 e $1,50. Maximizar o lucro, respeitando a capacidade de produção. Tempo de processamento: Departamentos Produto A B C Disponibilidade: Depto. Horas disponíveis A 160 B 120 C 280

11 Objetivo: maximizar o lucro Restrições: horas disponíveis nos departamentos x 1 = quantidade do produto 1 a ser fabricado x 2 = quantidade do produto 2 a ser fabricado max z = x 1 + 1,5x 2 2x 1 + 2x S. A. x 1 + 2x x 1 + 2x x 1, x 2 0

12 2. PROGRAMAÇÃO LINEAR SISTEMAS DE EQUAÇÔES LINEARES Dado um sistema de equações lineares: a11x1 + a12x a1nxn = b1 a21x1 + a22x a2nxn = b2 : : : : : : : : an1xn + an2x annxn = bn através de operações entre as equações podemos chegar a x1. = b1 x2 = b2... xn = bn que equivale ao sistema original, mas fornece diretamente a solução. Gauss-Jordan

13 O sistema só tem solução única se No. de equações = No. de incógnitas Quando temos mais incógnitas, o sistema é subdeterminado. Dado um sistema com m equações e n incógnitas (n > m), podemos arbitrar n-m variáveis = 0 e resolver para as restantes. A forma padrão é: x1 + a1 m+1xm a1 nxn = 1 x2 + a2 m+1xm a2 nxn = xm + am m+1xm am nxn = m Dependentes independentes

14 COMO MODELAR MATEMATICAMENTE UM PROBLEMA DE PROGRAMAÇÃO LINEAR? MAX (ou Min) Z = C1X1 + C2X CnXn objetivo) (função Sujeito à (restrições): A11*X1 + A12*X A1n*Xn >= ou <= b1 A21*X1 + A22*X A2n*Xn >= ou <= b2... Am1*X1 + Am2*X Amn*Xn >= ou <= bn Onde: Bi >= 0 para i = 1,...,m X1 >= 0,..., Xn >= 0 n = atividades que competem, sendo x1,...,xn seus níveis de atividade Cj = é o aumento em Z por unidade de atividade j. m = são os recursos cujos níveis são b1,...,bm Aij = é o quanto de recurso i é consumido pela atividade j. i = recurso;

15 j = atividade. O problema resume-se na Maximização ou Minimização de uma função linear, a função objetivo, sujeito à restrições também lineares. Formulação Equivalente: max z = min z n j 1 c jx j n j 1 (-c j )x j Exemplo_05: Considere a produção de ração animal a partir de três ingredientes básicos: osso, soja e farinha de peixe. Os principais nutrientes da ração são: proteína e cálcio. As necessidades mínimas desses nutrientes por kilo de ração são 30 % de proteína e 50% de cálcio. Os custos e quantidades de nutriente (em porcentagem) por ingrediente são dados na tabela.

16 Devemos determinar as quantidades de cada ingrediente a compor a ração de tal forma que as necessidades mínimas sejam satisfeitas com o menor custo possível. Exemplo_06: Problema da dieta balanceada. Sabe-se que os alimentos, leite, carne e ovos fornecem as quantidades de vitaminas dadas na tabela abaixo: Vitaminas Leite(litro) Carne (kg) Ovos (dúzia) Qte. Diária mínima A 0,25 mg 2 mg 10 mg 1 mg C D 2, Custo $4,2 $2,2 $17,0 unitário Deseja-se calcular quais as quantidades de leite, carne e ovos, a fim de satisfazer as quantidades diárias mínimas de nutrientes (vitaminas) a um custo mínimo.

17 Exemplo_07: Uma fábrica utiliza dois tipos de insumos:. A a um custo unitário Ca e com uma quantidade máxima disponível Na;. B a um custo unitário Cb e com uma quantidade máxima disponível Nb. Estes insumos podem ser processados pelos Processos I, II ou III, a um custo operacional nulo. Serão produzidos os produtos alpha, beta e gama, que alcançarão preços de venda P_alpha, P_beta, P_gama respectivamente (preços unitários). - Uma unidade de A processada em I produz, simultaneamente: 5*alpha e 2*gama; - Uma unidade de A junto com duas unidades de B conjuntamente processadas em II produz, simultaneamente: 3*alpha, 9*beta e 8*gama; - Uma unidade de B processada em III produz simultaneamente: 1*alpha, 4*beta, 1*gama. Formule o problema com programação linear de modo a minimizar o lucro.

18 Exemplo_08: Deseja-se formular o problema de modo a calcular qual a proporção de presuntos, lombinhos e pernis a serem defumados e qual a proporção a vender sem defumar. O objetivo é maximizar o lucro, supondo que toda a produção possa ser vendida. Podem ser processados (defumados), no máximo, 106 presuntos defumados por dia, sem pagar hora extra. Também pode-se processar (defumar), no máximo, 315 lombinhos e pernis por dia sem ter que pagar hora extra. Disponibilidade de matéria-prima: 480 presuntos, 400 lombinhos e 230 pernis. Custo de produção para produto acabado (por unidade) itens presunto lombinho pernil Defumado 5,18 4,76 5,62 (horário Normal) Defumado (horário extra) 6,58 5,54 6,92 Sem defumar 0,5 0,48 0,51 A diferença nos preços de venda entre defumado e não defumado é: Presunto = 6;

19 Lombinho = 5; Pernil = 6. Adotar a seguinte nomenclatura: X1 = qte. de presuntos defumados em hora extra; X2 = qte. de presuntos defumados em hora normal; X3 = qte. de presuntos vendidos sem defumar; X4 = qte. de lombinhos defumados em hora extra; X5 = qte. de lombinhos defumados em hora normal; X6 = qte. de lombinhos vendidos sem defumar; X7 = qte. de pernis defumados em hora extra; X8 = qte. de pernis defumados em hora normal; X9 = qte. de pernis vendidos sem defumar.

20 Exemplo_09: Um fazendeiro deseja otimizar as plantações de arroz e milho na sua fazenda. O seu lucro por unidade de área plantada de arroz é 5 u.m., e por unidade de área plantada de milho é 2 u.m.. As áreas plantadas de arroz e milho não devem ser maiores que 3 e 4 respectivamente. Cada unidade de área plantada de arroz consome 1 homem-hora, e cada unidade de área plantada de milho consome 2 homens-hora. A disponibilidade total de homens-hora é 9. Objetivo: maximizar o lucro Restrições: área máxima, mão de obra x 1 = área plantada de arroz x 2 = área plantada de milho max z = 5x 1 + 2x 2 x 1 3 (área de arroz) S. A. x 2 4 (área de milho) x 1 + 2x 2 9 (mão de obra) x 1, x 2 0

21 Exemplo_10: Um aluno da disciplina PES, que não quer ser identificado, quer aproveitar os conhecimentos adquiridos em programação linear para resolver um problema particular muito grave. Atualmente ele possui duas namoradas: Maria e Luisa, das quais gosta com a mesma intensidade. Ele fez alguns calculos e constatou que: Uma saída de 3 horas com Maria, elegante e sofisticada, custa $120,00; já com Luisa, mais simples, o gasto é de $60,00. Cada saída com Maria consome 3000 calorias; com Luisa, mais extrovertida e alegre, o gasto de energia é o dobro. Seus afazeres (trabalho, estudos) consomem muito do seu tempo e energia, de modo que, mensalmente lhe sobram 30 horas e calorias para as atividades sociais. Depois de pagar as contas da república onde mora, sobram $360,00 para diversão. O objetivo desse aluno é planejar sua vida social, de modo a obter o número máximo de saídas. Formular e resolver o problema graficamente.

22 Objetivo: maximizar número de saídas Restrições: dinheiro, tempo e calorias x 1 = saídas com Maria x 2 = saidas com Luisa max z = x 1 + x 2 120x x S.A. 3x 1 + 3x x x x 1, x 2 0

23 Exemplo_11: Apresentar o gráfico do problema: max z = 4x 1 + 2x 2 2x 1 + x 2 12 S. A. x 1 8 x 2 4 x 1, x 2 0

24 Geometria e álgebra em programação linear Conjuntos convexos: um conjunto é convexo se, unindo dois pontos do conjunto por um segmento de reta, todos os pontos deste segmento também pertencerão ao conjunto. Inserir figuras ilustrativas Semi-espaços: uma solução considerando a equação abaixo a1*x1 + a2*x na*xn = b divide o espaço R de dimensão n em 3 subconjuntos:. = dá um hiperplano, com uma reta em RxR, e um plano em RxRxR. > dá um semi-espaço aberto;. < dá um semi-espaço aberto; Por exemplo, dado a reta 2x + 4y = 8, divide o espaço como mostrado na figura abaixo:

25 y > < = x. Poliedrico convexo: é dado pela intersecção de um número finito de semi-espaço fechado em R**m.. Conjunto poligonais convexos podem ser: limitado e não-limitado limitado Não- limitado O conjunto convexo das soluções aceitáveis é chamado de conjunto factível ou conjunto viável. Semi-espaços são conjuntos convexos, e a intersecção de um número finito de semi-espaços fechados em Rn é um conjunto poliédrico convexo

26 Exemplo_12: Maximizar Z = 2x + 5y Sujeito à: X+2y <= 4 X y <= 4 X >= 1 Y >= -1 y x = 1 x y = -1 Seja f uma função linear definida num conjunto poliédrico fechado convexo S. A função S assume seu máximo ou seu mínimo num ponto extremo de S. Portanto, para resolver um problema de programação linear basta encontrar os pontos extremos e selecionar aquele que maximiza (ou minimiza) a função objetiva.

27 Para resolver um problema de P.L., basta encontrarmos os pontos extremos e avaliar a função objetivo em cada um. Para que um problema de P.L. possa ser resolvido algebricamente, as inequações devem ser transformadas em igualdades. Adicionamos variáveis de folga, também não negativas: Max z = c 1 x 1 +c 2 x 2 +c 3 x 3 a 11 x 1 + a 12 x 2 + a 13 x 3 b 1 a 11 x 1 + a 12 x 2 + a 13 x 3 + x 4 = b 1 S. A. a 21 x 1 + a 22 x 2 + a 23 x 3 b 2 a 21 x 1 + a 22 x 2 + a 23 x 3 + x 5 = b 2 a 31 x 1 + a 32 x 2 +a 33 x 3 = b 3 a 31 x 1 + a 32 x 2 + a 33 x 3 = b 3

28 Dado um conjunto de m equações linearmente independentes e n incógnitas, onde n > m, se define como solução básica a solução para o conjunto de equações em que ( n m) variáveis são feitas iguais a 0 e as restantes são obtidas da resolução do sistema de equações. Exemplo_13: Seja o sistema abaixo: X1 + X2 + 3*X3 X4 + X5 = 6 X1 + 2*X2 + 2*X3 X4 + 2*X5 = 2 Temos m = 2 e n = 5 Cada solução básica terá (5-2) = 3 variáveis iguais a 0, por exemplo X3, X4 e X5 e ( 5-3) = 2 obtidas da resolução do sistema. Ou seja, X1 = 10 e X2 = -4. É óbvio que variando-se as variáveis feitas iguais a zero teremos novas soluções básicas. O número de soluções básicas que podem ser obtidas é dado por: ( )

29 As variáveis diferentes de zero são chamadas de variáveis básicas e as iguais a zero são chamadas de variáveis não básicas. As variáveis de folga são acrescentadas as inequações para transformá-las em equações. Exemplo_14: Dado o seguinte problema de PL (MAX) Z = 20*X1 + 60X2 S.A. 70*X1 + 70*X2 <= *X1 + 50*X2 <= *X1 <= 80 3*X2 <= 180 X1,X2 >= 0 Acrescentando as variáveis de folga às quatro restrições do modelo: (1) 70*X1 + 70*X2 + F1 = 4900 (2) 90*X1 + 50*X2 +F2 = 4500 (3) 2*X1 +F3 = 80 (4) 3*X2 + F4 = 180

30 Tem-se então um sistema de equações lineares com 4 (m) equações e 6 (n) variáveis. Então tem-se: ( ) = 15 soluções básicas Observação: Embora as variáveis de folga sejam usadas para transformar inequações em equações, elas possuem um significado físico relacionado ao problema que está sendo modelado. Cada solução básica do exemplo 13 será obtida escolhendo-se 2 variáveis e fazendo-as iguais à zero, e resolvendo se o sistema para as 4 variáveis restantes. Vide a tabela a seguir: número não básicas Báscias condição Z 1 x1=0, x2=0 F1=4900, F2=4500, F3 = 80, F4 = 180 praticável 0 2 x1=0, F1=0 X2=70, F2 = 1000, F3 = 80, F4 = -30 impraticável 3 x1=0, F2=0 X2=90, F3 = 80, F4 = -90, F1 = impraticável 4 x1=0, F3=0 O = 80 impossível 5 x1=0, F4=0 F3=80, x2=60, f1 = 700, f2 = 1500 praticável x2=0, F1=0 F3 =-60, F2 = -1800, F4 = 180, X1 =70 impraticável 7 x2=0, F2=0 F3 = -20, F1 = 1400, X1 = 50, F4 = 180 impraticável 8 x2=0, F3=0 F1= 2100, F2 = 900, X1 = 40, F4=180 praticável x2=0, F4=0 O =180 impossível 10 F1=0, F2=0 X1 = 25, X2 = 45, F3 = 30, F4 = 45 praticável F1=0, F3=0 X1 = 40, X2 = 30, F2 = -600, F4 = 90 impraticável 12 F1=0, F4=0 X1 = 10, X2 = 60, F3 = 60, F2 = 600 praticável F2=0, F3=0 X1 = 40, X2 = 18, F1 = 840, F4 = 126 praticável F2=0, F4=0X1 = 16,7, X2 = 60, F3 = 46,7, F1 = -466,6impraticável 15 F3=0, F4=0 X1 = 40, X2 = 60, F1 = -2100, F2 =2100 impraticável

31 X2 4 R R R2 R1 X1 No gráfico podemos observar que a solução ótima só pode ser um dos vértices (pontos extremos) do espaço solução, pois, eles são justamente as soluções básicas praticáveis. Isto vem do fato de que o espaço solução é sempre um conjunto convexo onde cada solução básica corresponde a intersecção de tantas restrições quantas forem as variáveis de decisão do modelo ( duas, x1 e x2, neste exemplo). Observação: Se um modelo de PL possui uma única solução ótima, então ela é uma solução básica do sistema

32 de equações lineares formado pelas restrições do modelo acrescidas das suas respectivas variáveis de folga. Observação: No caso de termos mais de uma solução ótima, teremos sempre um número infinito de soluções ótimas, pois, serão ótimos todos os pontos que unem dois vértices (pontos extremos) adjacentes, ou seja, todos os pontos de um dos lados do espaço solução. Observação: O exemplo apresentado indica que esta maneira de resolver o problema de PL torna-se impraticável, quando por exemplo, temos um problema com 50 restrições e 100 variáveis. Neste caso teríamos 10**29 possíveis soluções básicas!!!

33 Método Simplex O método simplex de PL usa os conceitos básicos de álgebra matricial para achar a intersecção de duas ou mais linhas ou planos. O Simplex é uma maneira sistemática de pesquisar os vértices de um poliedro convexo, de modo a em um número finito de iterações fornecer a solução, ou indicar que esta não existe. Começa com alguma solução viável que satisfaz todas as restrições e sucessivamente obtêm soluções nas intersecções que oferecem valores melhores para a função objetivo. O método simplex examina apenas um número pequeno destas soluções básicas para encontrar a solução básica. Duas soluções básicas praticáveis são adjacentes se elas diferem por apenas uma variável não básica. Como o total de variáveis é a soma das não básicas com as básicas, elas diferem também por uma variável básica. Considerando o exemplo anterior, então temos que as seguintes soluções básicas são adjacentes: Número 01: VB VNB F1 = 4900 X1 = 0

34 F2 = 4500 X2 = 0 F3 = 80 F4 = 180 Número 08: VB VNB F1 = 2100 F3 = 0 F2 = 900 X2 = 0 X1 = 40 F4 = 180 O número de soluções básicas praticáveis adjacentes à cada solução básica é igual ao número de variáveis de decisão do modelo ( duas, x1 e x2 no caso deste exemplo). Assim, pode ser visto no gráfico onde são mostradas as soluções básicas, a solução 1 tem duas adjacentes: a 5 e a 8. O método Simplex considera que: se uma solução básica é melhor que as suas adjacentes, então ela é a solução ótima.

35 Aplicação do método Simplex: colocar na forma padrão, adicionando as variáveis de folga montar o quadro do SIMPLEX, conforme o seguinte esquema: I: matriz identidade x (atividades) x (folga) A I b - c 0 0 i.) ii.) iii.) Selecionar a coluna com o valor de C mais negativo; Encontre para todas as linhas i, a menor relação Bj/Aij, com Aij > 0. O valor escolhido será o pivô. Proceder com a operação-pivô que tal maneira a tornar o coeficiente Xij igual a 1 e todos os outros coeficientes da coluna j nulos. Identificar um novo ponto extremo.

36 iv.) Repita as etapas i, ii e iii até que não haja mais valores negativos na última linha c. Exemplo_16: Max z = 30 x x 2 2 x 1 + x 2 16 x 1 + 2x 2 11 x 1 + 3x 2 15 x 1, x 2 0 forma padrão : 2 x 1 + x 2 + x 3 = 16 x 1 + 2x 2 + x 4 = 11 x 1 + 3x 2 + x 5 = 15 x 1 x 2 x 3 x 4 x

37 A tabela inicial (acima) apresenta como base inicial, por ser mais simples, as variáveis de folga. Se analisarmos o gráfico a seguir corresponde a tomar-se a origem como solução básica inicial. Porém, para otimizar a solução acima é necessário aplicar o método simplex ( fases de i a iv), em que serão identificados os outros pontos extremos do poliedro convexo, e garantindo assim que estaremos passando de um ponto extremo a outro. X1 X2 X3 X4 X5 b Z Esta posição representa o primeiro máximo a ser atingido. Divide L3 por 3: X1 X2 X3 X4 X5 b Z / / Multiplica L3 por (-2) e soma com L2:

38 X1 X2 X3 X4 X5 b Z / / / / Multiplica L3 por (-1) e soma com L1: X1 X2 X3 X4 X5 b Z 1 2/ / / / / / Multiplica L3 por 50 e soma com L4: X1 X2 X3 X4 X5 b Z 1 2/ / / / / / / / Realizadas as operações Pivô na coluna 2, continua-se o processo selecionando agora a coluna 1, linha 2. X1 X2 X3 X4 X5 b Z 1 2/ / / / / / / / Multiplicou-se a segunda linha por 3.

39 Multiplicou-se a segunda linha por -1/3 e somou-se á terceira linha. Multiplicou-se a segunda linha por -5/3 e somou-se à primeira. Multiplicou-se a segunda por 40/3 e somou-se a quarta linha. Realizadas as operações Pivo na coluna 1, continua-se o processo selecionando agora a coluna 5, linha 1. X1 X2 X3 X4 X5 b Z X1 X2 X3 X4 X5 b Z 0 0 1/3-1 2/ /3-1/ /3 2/ /3 23 1/ Solução ótima é dada por: X1 = 7; X2 = 2 ; X3 = 0 ; X4 = 0 ; X5 = 2 ; Z = 310.

40 As variáveis X3 e X4 são não básicas. X2 X1 = 7 ; X2 = 3 ; Z = 310 Ponto Ótimo X1 Algoritmo do Simplex: Escolha do pivô: na última linha (linha z), escolha o coeficiente mais negativo (escolha da coluna) para a coluna selecionada, escolher a menor relação bj / aij (para aij >0) (escolha da linha)

41 Escolhido o pivô, fazemos as operações de linha para que este seja 1 e os outros elementos da coluna sejam 0. Os passos são repetidos até que não existam elementos negativos na última linha (linha z), o que significa que a função objetivo não pode ser melhorada.

42 Exercícios SIMPLEX 1 Max z = 5x 1 + 2x 2 x 1 3 S. A. x 2 4 x 1 + 2x 2 9 x 1, x Max z= 3x 1 + 2x 2 + 6x 3 6x 1 + 3x 2-4x 3 60 S.A 2x 1-4x 2 + 4x x 1 + 3x 2 + 3x 3 60 x 1, x 2, x Max z = 4x 1 + 2x 2 2x 1 + x 2 12 S. A. x 1 8 x 2 4 x 1, x 2 0

43 4 Min z = - x 1 + 2x 2 -x 1 + x 2 1 S.A 6x 1 + 4x 2 24 x 2 2 x 1,x Max z = 2x 1 + x 2 x 1 + x 2 5 S.A x 1 + 2x 2 8 X 1 4 x 1,x 2 0 Resposta: X1 = 4 ; X2 = 1 ; Z = 9) 6 Max z = 7x 1 + 3X2 + 2X3 5x 1 + 2x 2 + 2X3 19 S.A 2x 1 + x 2 + 2X3 8 x 1,x2, x 3, 0 Resposta: Z = 27

44 Solução 1 x 1 x 2 x 3 x 4 x 5 b /2 1-1/ /2 0 1/ Resposta: x 1 = 3 (área de arroz) x 2 = 3 (área de milho) x 3 = 0 (folga área de arroz) Solução 2 Resposta: x 1 = 0 fab prod 1 x 1 x 2 x 3 x 4 x 5 x 6 b x 2 = 5 fab prod 2 x 3 = 15 fab prod ½ / / / /2 0 60

45 33/ /8 1/6 105 ¾ /8 1/6 15 ¼ /8 1/ /2 4/3 100

46 Solução 3 x 1 x 2 x 3 x 4 x 5 b I II III 1 1/2 1/ /2-1/ Resposta1: Múltiplas soluções x 1 = 6 x 2 = 0 Fazendo mais uma iteração : x 3 = 0 x 4 = 2 1 1/2 1/ /2-1/ x 5 = 4 z = /2 0-1/ /2 1 1/

47 X1 X2 X3 X4 X5 b X1 X2 X3 X4 X5 B 0 5/3 1 1/ /3 0 1/ /3 0 1/6 0 4 X1= 4 X2=0 X3=5 X4=0 X5=2 Z = -4

48 Outras formas de restrição >= As restrições podem ser também na forma: ou =. A restrição >= tem dois efeitos principais:. reduz o tamanho do campo viável ou aceitável;. requer uma modificação do método básico de solução. A restrição do tipo >= (por exemplo, X2 >= 10) exclui o ponto (0,0). Assim a solução inicial antes utilizada, isto é, quando todas as variáveis decisórias eram zero, não é viável. Como o algorítmo Simplex procede de uma solução viável para uma situação melhorada, deve-se obter um novo ponto de partida. Existem vários métodos para tratar este problema. Um deles utiliza-se de uma variável artificial. Convertendo uma desigualdade em uma igualdade, a variável de folga deve ser acrescentada do outro lado da desigualdade.

49 Exemplo_16: x 1 x 2 x 3 x Com ser pode ser verificado, não identifica-se a matriz identidade. Este problema é resolvido acrescentando

50 uma outra variável denominada de variáveis artificiais (y1 e y2). Então, a solução do problema inicia-se com a introdução de variáveis artificiais, de modo a obter-se uma forma padrão, ou seja, um ponto extremo, mas não um ponto extremo do problema inicial. x1 + x2 + x3 = 10 x1 +2x2 - x4 + y1 = 8 -x1 + x2 + y2 = 2 Dado que a variável artificial foi acrescida o quadro simplex é construído: x 1 x 2 x 3 x 4 y 1 y As variáveis artificiais não fazem parte do problema, portanto não podem fazer parte da solução. Como elimina-las encontrando uma solução inicial válida?

51 Para estes tipos de restrição, deve-se empregar o SIMPLEX em duas fases. Assim: Fase I: encontrar uma solução factível inicial, minimizando a soma das variáveis artificiais sobre um novo conjunto. Fase II : Otimizar função objetivo z Fase I: a. Em cada expressão (restrição) <= ou >= introduzir as variáveis de folga. Em seguida, em cada expressão que era = ou >=, adicionar uma variável artificial. b. Monte a tabela c. Adicione no final da tabela mais uma linha (W) de coeficientes Dij debaixo da última linha, onde: Dij = -( A1j + A2j Amj) e inserir zeros nas colunas correspondentes às variáveis artificiais. Adicione debaixo de B, na última linha: Bw = - ( B1 + B Bm). No cálculo do valor de Dj e Bw só se consideram os elementos Aij e Bj das linhas que incluem variáveis artificiais.

52 d. Aplicar o algoritmo do Simplex utilizando a última linha como sendo a de decisão para a inclusão de variáveis de base. e.) Quando a última linha tiver chegado ao valor ótimo, verifique W. Se W = 0, quer dizer que a soma das variáveis artificiais é 0 (zero) e, portanto, obtivemos um ponto extremo do problema original. Desprezar todas as variáveis não básicas Xj, cujos elementos da última linha sejam > 0, variáveis artificiais, de modo que elas nunca possam ser diferentes de zero. Abandone a última linha. Agora, aplique o Simplex empregando a nova última linha. Se W é diferente de zero, isto quer dizer que o problema inicial tem um conjunto de restrições inconsistentes e não há solução factível para o problema original! forma padrão: x1 + x2 + x3 = 10 x1 + 2x2 - x4 + y1 = 8 -x1 + x2 + y2 = 2

53 x 1 x 2 x 3 x 4 y 1 y z w Resolvendo usando a linha w como linha de decisão. Exemplo_17 Dado a função objetivo: Max Z = -X1-6X2 +7X3 X4 5X5 S.A. 5X1 4X2 + 13X3 2X4 + X5 >= 20 X1 X2 + X3 X4 + X5 = 8 2X1 + X2 - X3 + 4X4 <= 15 X1,..., X5 >= 0 Neste exemplo, introduz-se as variáveis artificiais Y1 e Y2 além das de folga X6 e X7. A função objetivo do problema artificial é dada por: Min Y1 + Y2 = Max w = - Y1 Y2, ou seja: W + y1 + Y2 = 0

54 Sujeito à: 5X X5 X6 + Y1 = 20 X1... +X5 + Y2 = 8 2X X7 X1,..., X7 >= 0, Y1 >= 0, Y2 >= 0 5X1-4X2 + 13X3-2X4 + X5 - X6 Y1 20 X1 - X2 + X3 - X4 + X5 Y2 8 2X1 + X2 - X3 + 4X4 +X7 15 Z W Exemplo_18 Maximizar a função objetivo sujeito as seguintes restrições: Max Z = 2X1 + X2 + X3 S.A. 3X1 + 4X2 + X3 = 5 X1 + X2 + 2X3 = 3 X1 >= 0 ; X2 >= 0 ; X3 >= 0

55 X1 X2 X3 Y1 Y2 b L L4/4 L L Z L W X1 X2 X3 Y1 Y2 b L1 3/4 1 1/4 1/ /4 L1 / 4 L2 1/ /4-1/ /4 L1 - L2 L3-1 1/4 0-3/4 1/ /4 Z L1 + L3 L4-1/ /4 1 1/ /4 W 5L1 + L4 X1 X2 X3 Y1 Y2 b L1 5/ /7-1/7 1 (-1/4)L2 + L1 L2 1/ /7 4/7 1 L2/(7/4) L3-1 1/ /7 3/7 2 Z (3/4)L2 + L3 L W (7/4)L2 + L4 Com W = 0 chega-se ao final da fase I, e dá-se início a fase II, abaixo apresentada. X1 X2 X3 b L1 5/ L2 1/ L3-1 1/ X1 X2 X3 b L / /5 L2 0-1/5 1 4/5 L / /5

56 Ao obter-se W = - y1 - y2 igual à zero no terceiro tableau, chegou-se ao ponto X2 = 1 ; X3 = 1 ; X1 = 0, como base inicial para o problema original. Neste ponto Z já tem um valor não nulo. No quarto tableaux abandona-se o problema artificial e concentra-se em otimizar o problema original.

57 Soluções múltiplas: Se uma variável não-básica tem coeficiente de custo igual à zero numa solução ótima, isto quer dizer que ela pode ser introduzida na base sem alterar o valor da função objetiva. Portanto, também é uma base ótima (ponto extremo) e qualquer combinação linear destes dois pontos também é ótima. Exemplo_19 Encontra-se a solução do problema graficamente e pelo método Simplex e análise ambas as soluções. Max Z = 4X1 + 2X2 SA: 2X1 + X2 <= 12 X1 <= 8 X2 <= 4 X1, X2 >= 0 Conclusão: Geometricamente, isto pode ser visualizado dizendose que o hiperplano definido pela função objetiva ( reta no plano, no caso de duas variáveis) encosta numa das

58 arestas do conjunto convexo que define o espaço das soluções factíveis (viáveis). Portanto, neste caso, qualquer combinação linear originando um ponto entre dois extremos obtidos neste exemplo resulta no mesmo valor de Z máximo. Sem Soluções: Se w é diferente de zero significa que o problema possui uma série de restrições inconsistentes, e não solução factível para o problema. Exemplo_20 Encontra-se a solução do problema graficamente e pelo método Simplex e análise ambas as soluções. SA Max Z = 2X1 + X2 X1 X2 <= 0 X2 <= 2 X1 + 2X2 >= 8 X1, X2 >= 0 Soluções ilimitadas:

59 Todos os possíveis coeficientes (pivôs) são negativos na sua coluna equivalente, ou seja, não há limitante. Isto leva a solução para valor infinito, sem tornar as outras varáveis básicas negativas. Exemplo_21 Encontra-se a solução do problema graficamente e pelo método Simplex e análise ambas as soluções Max Z = 2X1 + 3X2 SA -4X1 + 2X2 <= 8-4X1 + 4X2 >= 4 X1 + X2 >= 5 X1, X2 >= 0 Soluções degeneradas: Ocorre quando uma variável básica assume valor zero. Exemplo_22

60 Encontra-se a solução do problema graficamente e pelo método Simplex e análise ambas as soluções. Max Z = 3X1 + 9X2 SA X1 + 4X2 <= 8 X1 + 2X2 <= 4 X1, X2 >= 0

61 Programação Linear Inteira (PLI) PLIs são programações lineares nas quais algumas ou todas as variáveis estão restritas à valores inteiros ou discretos. Os algorítimos de PLI são baseados na exploração da PL e envolve três etapas (Taha, 2008): a.) Relaxe a região de soluções da PLI, eliminando a restrição inteira imposta a todas as variáveis inteiras e substituindo qualquer variável y por uma faixa contínua. O resultado da relaxação é um PL normal; b.) Resolva a PL e identifique a solução ótima contínua; c.) Começando do ponto ótimo contínuo, adicione restrições especiais que modifiquem iterativamente a região de soluções da PL, de maneira que, a certa altura, resultará em um ponto extremo ótimo que satisfaz os requisitos inteiros. Branch and Bound: algorítmo de programação inteira Exemplo_23 Maximizar Z = 5X1 + 4X2

62 SA: X1 + X2 <= 5; 10X1 + 6X2 <= 45; X1, X2 inteiros, não negativos Os pontos de grade da figura abaixo definem a região de soluções da PLI. De acordo com o gráfico, a solução ótima da programação linear (PL) é definida com base na eliminação das restrições inteiras. A solução ótima é dada por: X1 = 3,75 ; X2 = 1,25 ; Z = 23,75.

63 Os pontos de grade da figura acima definem as regiões de soluções da PLI. Como a solução ótima da PL não satisfaz os requisitos inteiros, o algoritmo B&B modifica a região de soluções, de maneira a identificar a solução ótima para a programação linear inteira (PLI). Em primeiro lugar, seleciona-se uma das variáveis inteiras cujo valor ótimo na PL seja não inteiro (X1);

64 Selecionando X1, a região 3 < X1 < 4 da região de soluções de PL não contêm nenhum valor inteiro de X1 e, por isso, pode ser eliminada como não promissora. Isto equivale a substituir a PL original por duas novas PLs:. Região da PL2 ( X1 <= 3). Região da PL3 ( X1 >= 4)

65 Os dois espaços combinados de PL2 e de PL3 contêm a mesma quantidade de pontos inteiros viáveis da PLI original, ou seja: PLI= PL2+PL3 Como as novas restrições são mutuamente exclusivas, então PL2 e PL3 serão tratadas como PLs separadas. Ou seja, a solução ótima se encontra em PL3 ou em PL4. Portanto, estaremos resolvendo o problema de programação linear inteira (PLI), lidando com uma sequencia de PLs (ramificação).

66 Vamos primeiro, começar analisando PL2. Maximizar Z = 5X1 + 4X2 SA: X1 + X2 <= 5 10X1 + 6X2 <= 45 X1 <= 3 X1,X2 >= 0 A solução de PL2 é dada por: X1 = 3 ; X2 = 2 e Z = 23 Esta solução satisfaz os requisitos inteiros para X1 e X2. Não precisa ser mais investigada!

67 Vamos analisar PL3. Como o Z ótimo = 23,75 na PL, e por acaso todos os coeficientes da função objetivo são inteiros, é impossível que a PL3 ( que é mais restritiva que a PL1) produza uma solução inteira melhor do que Z > 23. Portanto, PL3 é descartado!

68 Assim X1 = 3; X2 = 2 e Z = 23 é a solução ótima. A figura acima demonstra que poderíamos também ter iniciado o algoritmo de B&B por PL3, o que pode acontecer na prática. Pelo fato de termos iniciado o problema analisando PL3, gerou-se um número maior de subproblemas como pode ser constatado na figura acima. Resumo do algoritmo B&B (Taha, 2008): Etapa_1: Selecione uma PLi, o próximo subproblema a ser analisado. Resolva a PLi e tente interpretá-la usando uma das três condições: a. O valor ótimo de Z da PLi n ão pode dar um valor objetivo melhor do que o limite inferior atual b. A PLi dá uma solução inteira viável melhor do que o limite inferior atual; c. A PLi não tem nenhuma solução viável. Na etapa_1 podem surgir dois casos:. Se a PLi for interpretada e uma solução melhor for encontrada, atualize o limite inferior. Se todos os subproblemas tiverem sido descartados, pare; a PLI

69 ótima está associada com o limite finito atual. Se não existir nenhum limite inferior finito, o problema não tem solução viável. Senão, determine i = i +1 e repita a etapa_1. Se a PLi não for interpretada, vá para a etapa_2 para ramificar. Etapa_2: (Ramificação). Selecione uma das variáveis inteiras Xi, cujo valor ótimo Xi na solução da PLi não seja inteiro. As etapas dadas se aplicam a problemas de maximização. Para minimização, substituímos o limite inferior por um limite superior. Exercício Desenvolva a árvore B&B para cada um dos seguintes problemas. Por conveniência, sempre selecione X1 como a variável de ramificação no nó 0. Max Z = 3X1 + 2X2 SA 2X1 + 5X2 <= 9 4X1 + 2X2 <= 9 X1, X2 >= 0 e inteiras

70 Capítulo 5 Otimização em redes Os problemas de otimização em redes apresentados neste capítulo tratam de aplicações tradicionais, tais como: encontrar o caminho mais curto entre dois pontos, determinar o fluxo máximo em uma rede de tal maneira a satisfazer os requisitos de suprimentos e demanda em diferentes locais. A solução destes problemas pode ser obtida por meio de uma variedade de algoritmos de otimização em redes. Neste capítulo veremos dois algoritmos:. Resolução do problema de caminho mínimo (Dijkstra). Resolução do problema para fluxo máximo Definições: Uma rede consiste em um conjunto de nós conectados por arcos. A notação para descrever uma rede é dada por (N,A), na qual N representa o conjunto de nós e A representa o conjunto de arcos. Como exemplo, a rede da figura abaixo é representada por:

71 N = [ 1,2,3,4,5] A = [(1,2), (1,3), (2,3), (2,5), (3,4), (3,5), (4,2), (4,5) ] Associado com cada rede está um fluxo. Em geral, o fluxo em uma rede é limitado pela capacidade de seus arcos, que pode ser finita ou infinita. Diz-se que um arco é orientado ou dirigido se ele permitir fluxo positivo em uma direção e fluxo zero na direção oposta. Uma rede orientada é aquela em que todos os arcos são orientados. Um caminho representa uma sequência de arcos distintos que ligam dois nós passando por outros

72 nós, independentemente da direção de fluxo em cada arco. Uma rede conectada é uma rede tal que todos os pares de nós estão ligados por no mínimo um caminho. Uma árvore é uma rede conectada sem ciclos formada por um subconjunto de todos os nós, e uma árvore geradora corresponde a uma árvore que liga todos os nós de rede. Veja a figura acima. 5.1 Caminho Mínimo O problema do caminho mínimo determina o caminho mais curto entre um destino e uma origem em uma rede Algorítmo de Dijkstra: determina o caminho mais curto entre o nó de origem e qualquer outro nó da rede. Fases do algoritmo: Fase_0: Dado uma rede, rotule o nó de origem (nó 1) com o rótulo permanente [0,--]. Determine i = 1; Os rótulos dos nós do algoritmo de Dijsktra são de dois tipos: temporários e permanentes. Um rótulo temporário é modificado se for possível encontrar uma rota mais curta até um nó. Se não for possível

73 encontrar nenhuma rota melhor, o status do rótulo temporário muda para permanente. Fase_1: Calcular os rótulos temporários [Ui + Dij, i] para cada nó j que puder ser alcançado partindo do nó i, contando que j não seja permanentemente rotulado. a.) Se o nó j já estiver rotulado com [Uj,k] passando por um outro nó k, e se Ui + Dij < Uj, substitua [Uj, k] por [ ui + Dij, i]; b.) Se todos os nós tiverem rótulos permanentes, pare. Caso contrário, selecione o rótulo [ Ui, S], cuja distância (=Uj) é a mais curta entre todos os rótulos temporários (empates são resolvidos arbitrariamente). Determine i = r e repita a etapa i; Exemplo: A rede da figura abaixo fornece as rotas possíveis e seus cumprimentos em milhas entre a cidade 1 ( nó 1) e quatro outas cidades (nó 2 a 5). Determine os caminhos mais curtos entre a Cidade 1 e cada uma das quatro outras cidades.

74 Iteração 0: Designe o rótulo permanente [0, --] ao nó 1; Iteração 1: Os nós 2 e 3 podem ser alcançados com base no nó 1 ( último no rotulado permanente). Assim, a lista de nós rotulados (permanentes e temporários ) fica como demonstrado na tabela abaixo: Para os dois rótulos temporários [100,1] e [30,1], o nó 3 resulta na menor distância (U3 = 30). Assim, o status do nó 3 muda para permanente.

75 Iteração 2. Os nós 4 e 5 podem ser alcançados com base no nó 3, e a lista de nós fica como demonstrado na tabela abaixo: O status do rótulo temporário [40,3] no nó 4 muda para permanente (U4 = 40). Iteração 3. Os Nós 2 e 5 podem ser alcançados com base no nó 4. Assim, a lista de nós rotulados é atualizada conforme demonstrado na tabela abaixo:

76 O rótulo temporário do nó 2 [100,1] obtido na iteração 1 muda para [55,4] na iteração 3 a fim de indicar que foi encontrada uma rota mais curta que passa pelo nó 4. Além disso, na iteração 3, o nó 5 tem dois rótulos alternativos com a mesma distância U5 = 90. Na iteração 3, o rótulo para o nó 2 passa a ser permanente. Iteração 4: Só o nó 3 pode ser alcançado com base no nó 2. Contudo o nó 3 tem um rótulo permanente e não pode ser rotulado novamente. A nova lista de rótulos permanece a mesma na iteração 3, exceto que o rótulo no nó 2 é permanente. Isso deixa o nó 5 como o único rótulo temporário.

77 Como o nó 5 não leva a outros nós, seu status é convertido em permanente, e o processo termina. O caminho mais curto entre o nó 1 e qualquer outro é determinado começando no nó de destino desejado e percorrendo a rota inversa a partir desse ponto, usando a informação dada pelos rótulos permanentes. Por exemplo, a seguinte sequencia determina a rota mais curta do nó 1 ao nó 2. (2) [55,4] (4) [40,3] (3) [30,1] (1) Exercício: A rede da figura abaixo fornece as distâncias em milhas entre pares de cidades. Use o algoritmo de Dijkstra para achar o caminho mais curto entre as seguintes cidades: a.) Cidades 1 e 8 b.) Cidades 1 e 6

78 5.2 Fluxo máximo Dado um arco (i,j) com i < j, usamos a notação (Cij, Cji) para representar as capacidades de fluxo nas duas direções i j e j i, respectivamente, conforme apresentado na figura abaixo. i Cij Cji j Cij: arco de fluxo I J Cji: arco de fluxo J I Define-se um corte como um conjunto de arcos, que quando eliminados da rede, causará um rompimento

79 total do fluxo entre o nó de origem e o nó sorvedouro. A capacidade do corte é igual à soma das capacidades de seus arcos. Entre todos os possíveis cortes na rede, o que tiver a menor capacidade dá o fluxo máximo da rede. Considere a rede da figura abaixo. As capacidades bidirecionais são mostradas nos respectivos arcos usando a convenção apresentada anteriormente. A figura apresenta 3 cortes cujas capacidades estão apresentadas a seguir: Corte 2 Corte Corte

80 Corte Arcos Associados Capacidades 1 (1,2), (1,3), (1,4) = 60 2 (1,3), (1,4), (2,3), (2,5) = (2,5), (3,5), (4,5) = 70 O fluxo máximo da rede não pode ultrapassar 60 unidades. Para determinar o fluxo máximo é necessário enumerar todos os cortes! Em uma rede de grande porte este procedimento pode ficar inviável. Portanto, é necessário de se desenvolver um algorítmo que torne o processo eficiente! Algorítmo de fluxo máximo Este algoritmo é baseado em achar rotas de passagem com fluxo líquido positivo entre os nós de origem e sorvedouro. Cada rota compromete parte ou toda a capacidade de seus arcos ao fluxo da rede. Dada a figura anterior, determine o fluxo máximo na rede.

81 Etapas do algoritmo: Iteração 01: Iguale as capacidades residuais iniciais às capacidades Iniciais ( Cij, Cji); Etapa 01: Determine a1 = infinito, e rotule o nó 1 com [infinito,--]. Determine i = 1; Etapa 2: S1 = {2,3,4} (diferente de vazio) Etapa 3: K =3, por que C13 = max {C12, C13, C14} = Max { 20,30,10} = 30. Determine a3 = C13 = 30, e rotule o nó 3 com [30,1]. Determine i=3 e repita a etapa 2; Etapa 2: S3 = {4,5} Etapa 3: K = 5 e a5 = C35 = max {10,20} = 20. Rotule o nó 5 com [20,3]. Uma rota de passagem é obtida. Vá para a etapa 5. Etapa 5: A rota de passagem é determinada pelos rótulos que iniciam no nó 5 e percorrem a rota inversa até o nó 1, isto é: (5) [20,3] (3) [30,1] (1) Assim, N1 = {1,3,5} e f1 = min {a1,a2,a5} = {infinito,30,20} = 20. As capacidades residuais ao longo da rota N1 são:

82 (C13, C31) = (30-20, ) = (10,20) (C35, C53) = (20-20, 0 +20) = (0,20) Iteração 2: Etapa 1. Determine a1 = infinito, e rotule o nó 1 com [infinito, --]. Determine i = 1; Etapa 2: S1 = {2,3,4}; Etapa 3: K=2 e a2 = C12 = max {20,10,10} = 20. Determine i=2 e repita a etapa 2; Etapa 2: S2 = {3,5} Etapa 3: K = 3 e a3 = C23 = 40. Rotule o nó 3 com [40,2]. Determine i = 3 e repita a etapa 2. Etapa 2: S3 = {4}. Observe que C35 = 0, portanto, o nó 5 não pode ser incluído em S3; Etapa 3: k = 4 e a4 = c34 = 10. Rotule o nó 4 com [10,3]. Determine i = 4 e repit a etapa 2; Etapa 2: S4 = {5}. Observe que os nós 1 e 3 estão rotulados, portanto, não podem ser incluídos em S4; Etapa 3: K = 5 e a5 = c45 = 20. Rotule o nó 5 com [20,4]. Foi conseguida uma rota de passagem. Vá para a etapa 5. Etapa 5: N2 = {1,2,3,4,5} e f2 = min {infinito,20,40,10,20} = 10. As capacidades residuais ao longo da rota de N2 são: (C12,C21) = (20-10,0+10) = (10,10) (C23,C32) = (40-10, 0+10) = (30,10)

83 (C34,C43) = (10-10, 5+10) = (0,15) (C45,C54) = (20-10, 0+10) = (10,10) Iteração 3 Etapa 1: Determine a1 = infinito e rotule o nó 1 com [infinito, --]. Determine i=1. Etapa 2: Si = {2,3,4} Etapa 3: K =2 e a2 = C12 = max[10,10,10] = 10. Empates são decididos aleatoriamente. Vamos rotular o nó 2 com [10,1]. Determine i=2 e repetir a etapa 2. Etapa 2: S2 = {3,5} Etapa 3: K=3 e a3 = C23 = 30. Rotule o nó 3 com [30,2]. Determine i = 3 e repita a etapa 2. Etapa 2: S3 = vazio, porque C34 = C35 = 0. Vá para a etapa 4ª fim de percorrer a rota inversa. Etapa 3: Rota inversa. O rótulo [30,2] no nó 3 dá o nó imediatamente precedente r =2. Elimine o nó 3 de qualquer consideração nessa iteração, cancelando-o. Determine i = r = 2, e repita a etapa 2. Etapa 2: S2 = {5}. Observe que o nó 3 foi eliminado na etapa da rota inversa. Etapa 3: k = 5 e a5 = C25 = 30. Rotule o nó 5 com [30,2]. Foi conseguida uma rota de passagem. Vá para a etapa 5. Etapa 5: N3 = {1,2,5} e C5 = min {infinito, 10,30} = 10. As residuais ao longo da rota de N3 são:

84 (C12,C21) = (10-10,10+10) = (0,20) (C25, C52) =(30-10, 0+10) = (20,10) Iteração 4. Esssa iteração dá N4 = {1,3,2,5} com f4=10. Iteração 5. Essa iteração dá N5 = {1,4,5} com f5 = 10 Iteração 6. Todos os arcos eu partem do nó 1 tem reisduais zero. Portanto, não há mais nenhuma rota de passagem possível. Retornar à etapa 6 para determinar a solução: Etapa 6: Fluxo máximo na rede é: F = f1 + f f5 = = 60.

85 contin Formalização do algorítimo: Considere o arco (i,j) inicialmente com capacidade (Cij, Cji). À medida que porções destas capacidades são comprometidas ao fluxo no arco, as capacidades

86 residuais (ou capacidades restantes) do arco são atualizadas. Usando a notação (cij,cji) para representar essas capacidades residuais. Para um nó j que recebe fluxo do nó i, anexamos um rótulo [aj,i], no qual aj é o fluxo do nó i ao nó j. Assim, as etapas do algoritmo são resumidas da maneira a seguir: Etapa 1: Para todos os arcos (i,j) iguale a capacidade residual à capacidade inicial, isto é: (cij, cji) = (Cij, Cji). Seja a1 = infinito e rotule o nó de origem com [infinito,--]. Determine i = 1 passe para a etapa 2. Etapa 2: Determine Si, que representa o conjunto de nós j não rotulados que podem ser alcançados diretamente do nó i por arcos com residuais positivos, isto é cij > 0, para todo j E Si. Se Si for diferente de zero, vá para a etapa 3. Caso contrário, vá par a etapa 4. Etapa 3: Determine k E Si, tal que: Cik = Max {cij}, j E Si

87 Determine ak = cik e rotule o nó k com [ak,i]. Se k = n, o nó sorvedouro foi rotulado e foi encontrada uma rota de passagem. Vá para a etapa 5. Caso contrário, determine i = k e vá para a etapa 2. Etapa 4: (percorrer a rota inversa). Se i = 1, nenhuma rota de passagem é possível, vá para a etapa 6. Caso contrário, determine que r seja o nó que foi rotulado imediatamente antes do nó atual i e elimine i do conjunto de nos adjacentes a r. Determine i=r e vá para a etapa 2. Etapa 5: (determinação das capacidades residuais). Defina os nós da p-ésima rota de passagem de nó de origem ao nó sorvedouro n como: Np = (1, K1, K2,...,n). Então o fluxo máximo ao longo da rota é calculado por: Fp = min {a1,ak1,ak2,...,an} A capacidade residual de cada arco ao longo da rota de passagemé reduzida de Fp, na direção do fluxo e aumentada de Fp, na direção contrária; isto é, para os nós i e j na rota, o fluxo residual é alterado do atual para: (a) ( cij fp, cji + fp) se o fluxo for de i para j; (b) (cij + fp, cji fp) se o fluxo for de j para i.

88 Reinstale quaisquer nós que foram eliminados na etapa 4. Determine i = 1 e retorne à etapa 2 para tentar uma nova rota de passagem. Exercícios: 1.) Determine o fluxo máximo para a rede da figura abaixo: 2.) Três refinarias enviam um produto à base de gasolina a dois terminais de distribuição por meio de uma rede de tubulações. Qualquer demanda que não puder ser satisfeita pela rede é adquirida de outras fontes. A rede de tubulações é atendida por três estações de

89 bombeamento, como mostrado na figura abaixo. O produto flui pela rede na direção mostrada pelas setas. A capacidade de cada segmento de tubulação (mostrada diretamente nos arcos) é dada em milhões de barris por dia. Refinarias Estações bombeamento terminais Determine o seguinte: a.) A produção diária em cada refinaria que combina com a máxima capacidade da rede;

90 b.) A demanda diária em cada terminal que combina com a máxima capacidade da rede; c.) A capacidade diária de cada bomba que combina com a máxima capacidade da rede. Obs: A solução do problema proposto requer equipar a rede com uma única origem e um único sorvedouro usando arcos unidirecionais de capacidade infinita representados na figura abaixo e grifados em vermelho: Refinarias Estações bombeamento terminais

91 3.) Use o algoritmo de Dijkstra para achar o caminho mais curto entre o nó 1 e todos os outros da rede da figura abaixo: ) De três depósitos A, B e C, dispondo-se respectivamente de 20,10 e 35 toneladas de um dado produto, pretende-se fazer chegar a três destinos D,E e F, respectivamente, 25, 20 e 20 toneladas do produto. As disponibilidades de transporte via caminhão entre as localidades é dada na tabela abaixo. Estabeleça o melhor plano de transportes.

92 5.) Dado o grafo abaixo determinar o fluxo máximo entre os nós 1 e 6 v

PESQUISA OPERACIONAL. Prof. Carlos Norberto Vetorazzi Jr.

PESQUISA OPERACIONAL. Prof. Carlos Norberto Vetorazzi Jr. PESQUISA OPERACIONAL Prof. Carlos Norberto Vetorazzi Jr. 1. INTRODUÇÃO Definições : Método científico de tomada de decisão Conjunto de técnicas e ferramentas de apoio à decisão, através da modelagem matemática

Leia mais

Programação Linear M É T O D O S : E S T A T Í S T I C A E M A T E M Á T I C A A P L I C A D A S D e 1 1 d e m a r ç o a 2 9 d e a b r i l d e

Programação Linear M É T O D O S : E S T A T Í S T I C A E M A T E M Á T I C A A P L I C A D A S D e 1 1 d e m a r ç o a 2 9 d e a b r i l d e Programação Linear A otimização é o processo de encontrar a melhor solução (ou solução ótima) para um problema. Existe um conjunto particular de problemas nos quais é decisivo a aplicação de um procedimento

Leia mais

Otimização Combinatória - Parte 4

Otimização Combinatória - Parte 4 Graduação em Matemática Industrial Otimização Combinatória - Parte 4 Prof. Thiago Alves de Queiroz Departamento de Matemática - CAC/UFG 2/2014 Thiago Queiroz (DM) Parte 4 2/2014 1 / 33 Complexidade Computacional

Leia mais

Programação Linear. MÉTODOS QUANTITATIVOS: ESTATÍSTICA E MATEMÁTICA APLICADAS De 30 de setembro a 13 de novembro de 2011 prof. Lori Viali, Dr.

Programação Linear. MÉTODOS QUANTITATIVOS: ESTATÍSTICA E MATEMÁTICA APLICADAS De 30 de setembro a 13 de novembro de 2011 prof. Lori Viali, Dr. Programação Linear São problemas complexos, muitas vezes de difícil solução e que envolvem significativas reduções de custos, melhorias de tempos de processos, ou uma melhor alocação de recursos em atividades.

Leia mais

Resolvendo algebricamente um PPL

Resolvendo algebricamente um PPL Capítulo 6 Resolvendo algebricamente um PPL 6.1 O método algébrico para solução de um modelo linear A solução de problemas de programação linear com mais de duas variáveis, não pode ser obtida utilizando-se

Leia mais

Método Simplex dual. Marina Andretta ICMC-USP. 24 de outubro de 2016

Método Simplex dual. Marina Andretta ICMC-USP. 24 de outubro de 2016 Método Simplex dual Marina Andretta ICMC-USP 24 de outubro de 2016 Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Marina Andretta (ICMC-USP) sme0211 - Otimização

Leia mais

Otimização Linear. Profª : Adriana Departamento de Matemática. wwwp.fc.unesp.br/~adriana

Otimização Linear. Profª : Adriana Departamento de Matemática. wwwp.fc.unesp.br/~adriana Otimização Linear Profª : Adriana Departamento de Matemática adriana@fc.unesp.br wwwp.fc.unesp.br/~adriana Forma geral de um problema Em vários problemas que formulamos, obtivemos: Um objetivo de otimização

Leia mais

Otimização. Otimização em Redes. Paulo Henrique Ribeiro Gabriel Faculdade de Computação Universidade Federal de Uberlândia 2016/2

Otimização. Otimização em Redes. Paulo Henrique Ribeiro Gabriel Faculdade de Computação Universidade Federal de Uberlândia 2016/2 Otimização Otimização em Redes Paulo Henrique Ribeiro Gabriel phrg@ufu.br Faculdade de Computação Universidade Federal de Uberlândia 2016/2 Paulo H. R. Gabriel (FACOM/UFU) GSI027 2016/2 1 / 51 Conteúdo

Leia mais

Marina Andretta. 10 de outubro de Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis.

Marina Andretta. 10 de outubro de Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Solução básica viável inicial Marina Andretta ICMC-USP 10 de outubro de 2016 Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Marina Andretta (ICMC-USP) sme0211

Leia mais

Programação Linear/Inteira

Programação Linear/Inteira Unidade de Matemática e Tecnologia - RC/UFG Programação Linear/Inteira Prof. Thiago Alves de Queiroz Aula 2 Thiago Queiroz (IMTec) Aula 2 Aula 2 1 / 46 Hipóteses de Linearidade Existem algumas hipóteses

Leia mais

PESQUISA OPERACIONAL -PROGRAMAÇÃO LINEAR MÉTODO SIMPLEX. Prof. Angelo Augusto Frozza, M.Sc.

PESQUISA OPERACIONAL -PROGRAMAÇÃO LINEAR MÉTODO SIMPLEX. Prof. Angelo Augusto Frozza, M.Sc. PESQUISA OPERACIONAL -PROGRAMAÇÃO LINEAR MÉTODO SIMPLEX Prof. Angelo Augusto Frozza, M.Sc. MÉTODO SIMPLEX A ideia geral é Em vez de enumerar todas as soluções básicas (pontos extremos) do problema de PL,

Leia mais

Unidade II PESQUISA OPERACIONAL. Profa. Ana Carolina Bueno

Unidade II PESQUISA OPERACIONAL. Profa. Ana Carolina Bueno Unidade II PESQUISA OPERACIONAL Profa. Ana Carolina Bueno Programação linear É um subitem da programação matemática. É um dos modelos utilizados em pesquisa operacional. Consiste em otimizar (maximizar

Leia mais

Métodos de Pesquisa Operacional

Métodos de Pesquisa Operacional Métodos de Pesquisa Operacional Programação Linear é a parte da Pesquisa Operacional que trata da modelagem e resolução de problemas formulados com funções lineares. Programação Linear } Métodos de Resolução

Leia mais

PESQUISA OPERACIONAL 11. SOLUÇÃO ALGEBRICA O MÉTODO SIMPLEX ( ) DEFINIÇÕES REGRAS DE TRANSFORMAÇÃO. Prof. Edson Rovina Página 16

PESQUISA OPERACIONAL 11. SOLUÇÃO ALGEBRICA O MÉTODO SIMPLEX ( ) DEFINIÇÕES REGRAS DE TRANSFORMAÇÃO. Prof. Edson Rovina Página 16 11. SOLUÇÃO ALGEBRICA O MÉTODO SIMPLEX Página 16 Após o problema ter sido modelado, pode-se resolvê-lo de forma algébrica. A solução algébrica é dada pelo método simplex elaborado por Dantzig. Antes da

Leia mais

Programação Linear - Parte 5

Programação Linear - Parte 5 Matemática Industrial - RC/UFG Programação Linear - Parte 5 Prof. Thiago Alves de Queiroz 1/2016 Thiago Queiroz (IMTec) Parte 5 1/2016 1 / 29 Dualidade Os parâmetros de entrada são dados de acordo com

Leia mais

OTIMIZAÇÃO. O processo de otimização normalmente involve a procura de pontos de máximos e mínimos de uma função.

OTIMIZAÇÃO. O processo de otimização normalmente involve a procura de pontos de máximos e mínimos de uma função. OTIMIZAÇÃO O processo de otimização normalmente involve a procura de pontos de máximos e mínimos de uma função. Pontos de máximos e mínimos de uma função são pontos onde a derivada da função é nula. A

Leia mais

Aula 20: Revisão Otimização Linear e Inteira Túlio A. M. Toffolo

Aula 20: Revisão Otimização Linear e Inteira Túlio A. M. Toffolo Aula 20: Revisão Otimização Linear e Inteira Túlio A. M. Toffolo http://www.toffolo.com.br BCC464 / PCC174 Departamento de Computação - UFOP Breve Revisão Programação Linear vs Programação Inteira Modelagem

Leia mais

Combinando inequações lineares

Combinando inequações lineares Combinando inequações lineares A multiplicação por um número > 0 não altera uma inequação 2x x 5 4x 2x 10 1 2 1 2 A soma de duas inequações (com o mesmo sentido) produz uma inequação válida x 3x x 3 1

Leia mais

Problema do Caminho Mínimo

Problema do Caminho Mínimo Departamento de Engenharia de Produção UFPR 63 Problema do Caminho Mínimo O problema do caminho mínimo ou caminho mais curto, shortest path problem, consiste em encontrar o melhor caminho entre dois nós.

Leia mais

Investigação Operacional

Investigação Operacional Modelos de Programação Linear (Mestrado) Engenharia Industrial http://dps.uminho.pt/pessoais/zan - Escola de Engenharia Departamento de Produção e Sistemas 1 Modelação Matemática As técnicas e algoritmos

Leia mais

Pesquisa Operacional aula 3 Modelagem PL. Profa. Alessandra Martins Coelho

Pesquisa Operacional aula 3 Modelagem PL. Profa. Alessandra Martins Coelho Pesquisa Operacional aula 3 Modelagem PL Profa. Alessandra Martins Coelho agosto/2013 Exercício Considerando que x j representa as variáveis de decisão, classificar os problemas a seguir em uma das categorias:

Leia mais

INTRODUÇÃO AOS MÉTODOS NUMÉRICOS. Solução de Sistemas Lineares

INTRODUÇÃO AOS MÉTODOS NUMÉRICOS. Solução de Sistemas Lineares INTRODUÇÃO AOS MÉTODOS NUMÉRICOS Solução de Sistemas Lineares Introdução Uma variedade de problemas de engenharia pode ser resolvido através da análise linear; entre eles podemos citar: determinação do

Leia mais

Programação Linear/Inteira

Programação Linear/Inteira Unidade de Matemática e Tecnologia - RC/UFG Programação Linear/Inteira Prof. Thiago Alves de Queiroz Aula 3 Thiago Queiroz (IMTec) Aula 3 Aula 3 1 / 45 O Método Simplex Encontre o vértice ótimo pesquisando

Leia mais

Problemas de Fluxo em Redes

Problemas de Fluxo em Redes CAPÍTULO 7 1. Conceitos fundamentais de grafos Em muitos problemas que nos surgem, a forma mais simples de o descrever, é representá-lo em forma de grafo, uma vez que um grafo oferece uma representação

Leia mais

Métodos Numéricos - Notas de Aula

Métodos Numéricos - Notas de Aula Métodos Numéricos - Notas de Aula Prof a Olga Regina Bellon Junho 2007 Introdução Sistemas Lineares Sistemas lineares são sistemas de equações com m equações e n incógnitas formados por equações lineares,

Leia mais

3. Resolução de problemas por meio de busca

3. Resolução de problemas por meio de busca Inteligência Artificial - IBM1024 3. Resolução de problemas por meio de busca Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Resolução de problemas por

Leia mais

CAPÍTULO 4. Teoria da Dualidade

CAPÍTULO 4. Teoria da Dualidade CAPÍTULO 4 1. Introdução Uma dos conceitos mais importantes em programação linear é o de dualidade. Qualquer problema de PL tem associado um outro problema de PL, chamado o Dual. Neste contexto, o problema

Leia mais

Tópicos Especiais em Computação I

Tópicos Especiais em Computação I Tópicos Especiais em Computação I Pesquisa Operacional Exercícios (Simplex) Prof. Fabio Henrique N. Abe Fabio.henrique.abe@gmail.comd Método Simplex Desenvolvido por George Dantzig em 1947 É um procedimento

Leia mais

Simplex. Investigação Operacional José António Oliveira Simplex

Simplex. Investigação Operacional José António Oliveira Simplex 18 Considere um problema de maximização de lucro relacionado com duas actividades e três recursos. Na tabela seguinte são dados os consumos unitários de cada recurso (A, B e C) por actividade (1 e 2),

Leia mais

Pesquisa Operacional

Pesquisa Operacional Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 5 Modelo da Designação Fernando Marins fmarins@feg.unesp.br Departamento de Produção

Leia mais

PESQUISA OPERACIONAL -PROGRAMAÇÃO LINEAR MÉTODO SIMPLEX. Prof. Angelo Augusto Frozza, M.Sc.

PESQUISA OPERACIONAL -PROGRAMAÇÃO LINEAR MÉTODO SIMPLEX. Prof. Angelo Augusto Frozza, M.Sc. PESQUISA OPERACIONAL -PROGRAMAÇÃO LINEAR MÉTODO SIMPLEX Prof. Angelo Augusto Frozza, M.Sc. ROTEIRO Esta aula tem por base o Capítulo 3 do livro de Taha (2008): Motivação Conceitos Matemáticos Iniciais

Leia mais

Programação Linear/Inteira - Aula 5

Programação Linear/Inteira - Aula 5 Unidade de Matemática e Tecnologia - RC/UFG Programação Linear/Inteira - Aula 5 Prof. Thiago Alves de Queiroz Aula 5 Thiago Queiroz (IMTec) Aula 5 Aula 5 1 / 43 Análise de Sensibilidade Estudar o efeito

Leia mais

5 Análise de Sensibilidade

5 Análise de Sensibilidade MAC-35 - Programação Linear Primeiro semestre de 00 Prof. Marcelo Queiroz http://www.ime.usp.br/~mqz Notas de Aula 5 Análise de Sensibilidade Neste capítulo consideramos o problema de programação linear

Leia mais

INVESTIGAÇÃO OPERACIONAL. Programação Linear. Exercícios. Cap. IV Modelo Dual

INVESTIGAÇÃO OPERACIONAL. Programação Linear. Exercícios. Cap. IV Modelo Dual INVESTIGAÇÃO OPERACIONAL Programação Linear Exercícios Cap. IV Modelo Dual António Carlos Morais da Silva Professor de I.O. i Cap. IV - Modelo Dual - Exercícios IV. Modelo Problema Dual 1. Apresente o

Leia mais

Programação Linear - Parte 3

Programação Linear - Parte 3 Matemática Industrial - RC/UFG Programação Linear - Parte 3 Prof. Thiago Alves de Queiroz 1/2016 Thiago Queiroz (IMTec) Parte 3 1/2016 1 / 26 O Método Simplex Encontre o vértice ótimo pesquisando um subconjunto

Leia mais

Pesquisa Operacional

Pesquisa Operacional Pesquisa Operacional Casos Especiais do Método Simplex e Gráfica Profa. Sheila Morais de Almeida DAINF-UTFPR-PG setembro - 2015 1 Casos Especiais do Método Simplex Degeneração Múltiplas soluções ótimas

Leia mais

Método Simplex. Marina Andretta ICMC-USP. 19 de outubro de 2016

Método Simplex. Marina Andretta ICMC-USP. 19 de outubro de 2016 Método Simplex Marina Andretta ICMC-USP 19 de outubro de 2016 Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Marina Andretta (ICMC-USP) sme0211 - Otimização linear

Leia mais

Pesquisa Operacional. Introdução à Pesquisa Operacional Programação Linear

Pesquisa Operacional. Introdução à Pesquisa Operacional Programação Linear Pesquisa Operacional Introdução à Pesquisa Operacional Programação Linear 1 Sumário Modelagem e limitações da Programação Linear. Resolução Gráfica. Forma padrão de um modelo de Programação Linear. Definições

Leia mais

O método gráfico resolve PLs com 2 variáveis. 3 variáveis se você for um ninja da geometria descritiva!

O método gráfico resolve PLs com 2 variáveis. 3 variáveis se você for um ninja da geometria descritiva! Resolução de PLs O método gráfico resolve PLs com 2 variáveis 3 variáveis se você for um ninja da geometria descritiva! Precisamos de métodos para resolver PLs com qualquer número de variáveis 1 Pesquisa

Leia mais

α ( u 1 - u 2 ) = u 3 - u 2.

α ( u 1 - u 2 ) = u 3 - u 2. 2- NOÇÕES DE CONVEXIDADE E FORMULAÇÃO MATEMÁTICA DE PROBLEMAS DE PROGRAMAÇÃO LINEAR 21 Noções de Convexidade 211 - Combinação Convexa de pontos ponto b = αx 1 Considere C um conjunto contendo os pontos

Leia mais

CAPÍTULO 3. Método Simplex

CAPÍTULO 3. Método Simplex CAPÍTULO 3 1. Soluções Básicas Admissíveis Considere um problema de PL representado nas suas formas padrão e matricial. Uma base é um conjunto de m variáveis, tais que a matriz dos coeficientes do sistema

Leia mais

Aula 10: Revisão Otimização Linear e Inteira Túlio A. M. Toffolo

Aula 10: Revisão Otimização Linear e Inteira Túlio A. M. Toffolo Aula 10: Revisão Otimização Linear e Inteira Túlio A. M. Toffolo http://www.toffolo.com.br 2018/2 - PCC174/BCC464 Aula Prática - Laboratório COM30!1 Breve Revisão Modelagem Método gráfico O Algoritmo Simplex

Leia mais

No exemplo há duas variáveis básicas: ST e LX. Serão agora representadas, em um gráfico bidirecional, tanto as restrições como a função objetivo.

No exemplo há duas variáveis básicas: ST e LX. Serão agora representadas, em um gráfico bidirecional, tanto as restrições como a função objetivo. RESOLUÇÃO PELO MÉTODO GRÁFICO No exemplo há duas variáveis básicas: ST e. Serão agora representadas, em um gráfico bidirecional, tanto as restrições como a função objetivo. O modelo é: Maximizar: Sujeito

Leia mais

EAD 350 Pesquisa Operacional Aula 04 Parte 1 Resolução de Exercícios

EAD 350 Pesquisa Operacional Aula 04 Parte 1 Resolução de Exercícios EAD 350 Pesquisa Operacional Aula 04 Parte 1 Resolução de Exercícios Profa. Adriana Backx Noronha Viana (Adapt. Material Prof. Cesar Alexandre de Souza) backx@usp.br FEA/USP Aula 3 Enunciado 4 Uma pequena

Leia mais

Pesquisa Operacional aplicada ao Planejamento e Controle da Produção e de Materiais Programação Linear

Pesquisa Operacional aplicada ao Planejamento e Controle da Produção e de Materiais Programação Linear Pesquisa Operacional aplicada ao Planejamento e Controle da Produção e de Materiais Programação Linear Introdução à Pesquisa Operacional Origens militares Segunda guerra mundial Aplicada na alocação de

Leia mais

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu 1 Programação Linear (PL) Aula 10: Método Simplex Técnica das variáveis artificias Método das penalidades ( Big M ). Método das duas fases. 2 Modificando o Exemplo Protótipo. Suponha-se que é modificado

Leia mais

Pesquisa Operacional Aula 3 Modelagem em PL

Pesquisa Operacional Aula 3 Modelagem em PL Pesquisa Operacional Aula 3 Modelagem em PL Prof. Marcelo Musci aula@musci.info www.musci.info Programação Linear Programação Linear: Preocupação em encontrar a melhor solução para problemas associados

Leia mais

Programação Linear - Parte 1

Programação Linear - Parte 1 Graduação em Matemática Industrial Programação Linear - Parte 1 Prof. Thiago Alves de Queiroz Departamento de Matemática - CAC/UFG 1/2014 Thiago Queiroz (DM) Parte 1 1/2014 1 / 33 Introdução Programação

Leia mais

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016 NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016 Metaheurística: São técnicas de soluções que gerenciam uma interação entre técnicas de busca local e as estratégias de nível superior para criar um processo de

Leia mais

Programação Linear (PL) Solução algébrica - método simplex

Programação Linear (PL) Solução algébrica - método simplex Universidade Federal de Itajubá Instituto de Engenharia de Produção e Gestão Pesquisa Operacional Simplex Prof. Dr. José Arnaldo Barra Montevechi Programação Linear (PL) Solução algébrica - método simplex

Leia mais

Poliedros na forma padrão

Poliedros na forma padrão Poliedros na forma padrão Marina Andretta ICMC-USP 19 de outubro de 2016 Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Marina Andretta (ICMC-USP) sme0211 - Otimização

Leia mais

Otimização Aplicada à Engenharia de Processos

Otimização Aplicada à Engenharia de Processos Otimização Aplicada à Engenharia de Processos Aula 4: Programação Linear Felipe Campelo http://www.cpdee.ufmg.br/~fcampelo Programa de Pós-Graduação em Engenharia Elétrica Belo Horizonte Março de 2013

Leia mais

Terça-feira, 7 de maio

Terça-feira, 7 de maio 15.053 Terça-feira, 7 de maio Formulações de Programação Inteira Distribuir: Anotações da Aula 1 Rápido Resumo de PD PD normalmente funciona para a tomada de decisões ao longo do tempo Objetivos das duas

Leia mais

Quinta-feira, 11 de abril

Quinta-feira, 11 de abril 15.053 Quinta-feira, 11 de abril Mais alguns exemplos de programação inteira Técnicas de planos de corte para obter melhores limitações Entregar: Observações de Aula 1 Exemplo: Localização do corpo de

Leia mais

Problemas de Mistura. Prof. Gustavo Peixoto Silva Departamento de Computação Univ. Federal de Ouro Preto 5 modelos

Problemas de Mistura. Prof. Gustavo Peixoto Silva Departamento de Computação Univ. Federal de Ouro Preto 5 modelos Problemas de Mistura Prof. Gustavo Peixoto Silva Departamento de Computação Univ. Federal de Ouro Preto 5 modelos Problemas de Mistura Problemas deste tipo consistem em combinar materiais obtidos na natureza

Leia mais

Capítulo 3. O Método Primal Simplex

Capítulo 3. O Método Primal Simplex Capítulo 3 O Método Primal Simplex 3.. Introdução Neste Capítulo, apresenta-se o método de resolução de problemas de programação linear mais utilizado, isto é, o método primal simplex. Assim, apresenta-se

Leia mais

Pesquisa Operacional. Introdução à Pesquisa Operacional Programação Linear

Pesquisa Operacional. Introdução à Pesquisa Operacional Programação Linear Pesquisa Operacional Introdução à Pesquisa Operacional Programação Linear 1 Sumário Modelagem e limitações da Programação Linear. Resolução Gráfica. Forma padrão de um modelo de Programação Linear. Definições

Leia mais

Aula 13: Branch-and-bound

Aula 13: Branch-and-bound Aula 13: Branch-and-bound Otimização Linear e Inteira Túlio A. M. Toffolo http://www.toffolo.com.br BCC464/PCC174 2018/2 Departamento de Computação UFOP Previously... Modelagem em PI / Problemas Combinatórios

Leia mais

Professor João Soares 20 de Setembro de 2004

Professor João Soares 20 de Setembro de 2004 Teoria de Optimização (Mestrado em Matemática) Texto de Apoio 2A Universidade de Coimbra 57 páginas Professor João Soares 20 de Setembro de 2004 Optimização Linear Considere o problema (1) abaixo, que

Leia mais

Programação Inteira. Solução com o método Branch-and-Bound

Programação Inteira. Solução com o método Branch-and-Bound Programação Inteira Solução com o método Branch-and-Bound Conceitos gerais Um conceito fundamental nos métodos de resolução de programação inteira é a relaxação linear p Consiste em substituir PIM Ζ +

Leia mais

Pesquisa Operacional 1. Aula 5- Modelagem de problemas. Profa. Milena Estanislau Diniz 2º Semestre/2011

Pesquisa Operacional 1. Aula 5- Modelagem de problemas. Profa. Milena Estanislau Diniz 2º Semestre/2011 Universidade Federal de Ouro Preto Departamento de Engenharia de Produção- DEENP Pesquisa Operacional 1 Aula 5- Modelagem de problemas Profa. Milena Estanislau Diniz 2º Semestre/2011 Tema da aula de hoje

Leia mais

MÉTODO SIMPLEX SOLUÇÃO INICIAL ARTIFICIAL

MÉTODO SIMPLEX SOLUÇÃO INICIAL ARTIFICIAL MÉTODO SIMPLEX SOLUÇÃO INICIAL ARTIFICIAL Problemas de PL nos quais todas as restrições são ( ) com lados direitos não negativos oferecem uma solução básica inicial viável conveniente, na qual todas as

Leia mais

Consideremos um sistema linear de n equações lineares e n incógnitas, do tipo:

Consideremos um sistema linear de n equações lineares e n incógnitas, do tipo: 58 3. Resolução de Sistemas Lineares MÉTODOS DIRETOS: são métodos que determinam a solução de um sistema linear com um número finito de operações. Entre os métodos diretos (Eliminação de Gauss, Eliminação

Leia mais

Aula 02: Algoritmo Simplex (Parte 1)

Aula 02: Algoritmo Simplex (Parte 1) Aula 02: Algoritmo Simplex (Parte 1) Otimização Linear e Inteira Túlio A. M. Toffolo http://www.toffolo.com.br BCC464/PCC174 2018/2 Slides baseados no material de Haroldo Gambini Previously... Aula anterior:

Leia mais

1. INTRODUÇÃO. FAAP Faculdade de Administração

1. INTRODUÇÃO. FAAP Faculdade de Administração 1. INTRODUÇÃO Histórico: O termo Pesquisa Operacional foi utilizado pela 1ª vez na Grã-Bretanha, em 1938, para designar o estudo sistemático de problemas estratégicos e táticos decorrentes de operações

Leia mais

OTIMIZAÇÃO. O processo de otimização normalmente involve a procura de pontos de máximos e mínimos de uma função.

OTIMIZAÇÃO. O processo de otimização normalmente involve a procura de pontos de máximos e mínimos de uma função. OTIMIZAÇÃO O processo de otimização normalmente involve a procura de pontos de máximos e mínimos de uma função. Pontos de máximos e mínimos de uma função são pontos onde a derivada da função é nula. A

Leia mais

Simplex. Transparências de apoio à leccionação de aulas teóricas. c 2011, 2009, 1998 José Fernando Oliveira, Maria Antónia Carravilla FEUP

Simplex. Transparências de apoio à leccionação de aulas teóricas. c 2011, 2009, 1998 José Fernando Oliveira, Maria Antónia Carravilla FEUP Simplex Transparências de apoio à leccionação de aulas teóricas Versão 3 c 2011, 2009, 1998 José Fernando Oliveira, Maria Antónia Carravilla FEUP Programação Linear abordagem algébrica max sujeito a: n

Leia mais

Cálculo Numérico BCC760

Cálculo Numérico BCC760 Cálculo Numérico BCC760 Resolução de Sistemas de Equações Lineares Simultâneas Departamento de Computação Página da disciplina http://www.decom.ufop.br/bcc760/ 1 Introdução! Definição Uma equação é dita

Leia mais

Algoritmo Simplex para Programação Linear I

Algoritmo Simplex para Programação Linear I EA Planejamento e Análise de Sistemas de Produção Algoritmo Simple para Programação Linear I DCA-FEEC-Unicamp Modelo de Programação Linear ma c ( n ) s. a. A b A ( m n) b ( m ) c ( n) P ( R n A b} Poliedro

Leia mais

Modelagem Matemática de Problemas de Programação Linear

Modelagem Matemática de Problemas de Programação Linear Capítulo 1 Modelagem Matemática de Problemas de Programação Linear 1.1. Introdução Neste Capítulo analisamos brevemente a estratégia usada para encontrar a modelagem matemática de um problema de programação

Leia mais

Agenda do Dia Aula 14 (19/10/15) Sistemas Lineares: Introdução Classificação

Agenda do Dia Aula 14 (19/10/15) Sistemas Lineares: Introdução Classificação Agenda do Dia Aula 14 (19/10/15) Sistemas Lineares: Introdução Classificação Sistemas Lineares Sistemas lineares são sistemas de equações com m equações e n incógnitas formados por equações lineares. Um

Leia mais

Otimização Linear. Profª : Adriana Departamento de Matemática. wwwp.fc.unesp.br/~adriana

Otimização Linear. Profª : Adriana Departamento de Matemática. wwwp.fc.unesp.br/~adriana Otimização Linear Profª : Adriana Departamento de Matemática adriana@fc.unesp.br wwwp.fc.unesp.br/~adriana Revisão Método Simplex Solução básica factível: xˆ xˆ, xˆ N em que xˆ N 0 1 xˆ b 0 Solução geral

Leia mais

PCC173 - Otimização em Redes

PCC173 - Otimização em Redes PCC173 - Otimização em Redes Marco Antonio M. Carvalho Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal de Ouro Preto 15 de maio de 2017 Marco Antonio M. Carvalho

Leia mais

Complementos de Investigação Operacional. Folha nº 1 Programação Inteira 2007/08

Complementos de Investigação Operacional. Folha nº 1 Programação Inteira 2007/08 Complementos de Investigação Operacional Folha nº Programação Inteira 2007/08 - A Eva e o Adão pretendem dividir entre eles as tarefas domésticas (cozinhar, lavar a louça, lavar a roupa, fazer as compras)

Leia mais

Professor: Rodrigo A. Scarpel

Professor: Rodrigo A. Scarpel Professor: Rodrigo A. Scarpel rodrigo@ita.br www.mec.ita.br/~rodrigo Programa do curso: Semana : Apresentação da disciplina Introdução à Programação Linear Resolução de problemas de PL pelo Método Gráfico

Leia mais

UNIDADE 7 PROGRAMAÇÃO MATEMÁTICA

UNIDADE 7 PROGRAMAÇÃO MATEMÁTICA UNIDADE 7 PROGRAMAÇÃO MATEMÁTICA 7.) INTRODUÇÃO Os problemas de Programação Linear Inteira podem ser entendidos como casos específicos da Programação Linear (conjunto solução contínuo), onde todas, ou

Leia mais

Programação Matemática Lista 3

Programação Matemática Lista 3 Programação Matemática Lista 3. Coloque na forma padrão os seguintes problemas de programação linear: a) Maximizar X 7 X + 8 X 3 +X 4 X + X X 3 + X 4 4 X + X 3 9 X + X 3 + X 4 6 X 0, X 0, X 3 0, X 4 0

Leia mais

Área disponível para semear: A km 2 Tipo de plantação: trigo ou sevada Quantidade disponível de inseticida = P e fertilizante = F

Área disponível para semear: A km 2 Tipo de plantação: trigo ou sevada Quantidade disponível de inseticida = P e fertilizante = F Edgard Jamhour Área disponível para semear: A km 2 Tipo de plantação: trigo ou sevada Quantidade disponível de inseticida = P e fertilizante = F Quantidade de I e F necessária por unidade de área: Trigo:

Leia mais

Programação Matemática

Programação Matemática Programação Matemática Docentes: Ana Paula, Franklina e Maristela Instituto de Ciências Matemáticas e de Computação - ICMC Universidade de São Paulo USP (Material Elaborado por Aline Leão modificado por

Leia mais

Aula 01: Introdução Otimização Linear e Inteira Túlio A. M. Toffolo

Aula 01: Introdução Otimização Linear e Inteira Túlio A. M. Toffolo Aula 01: Introdução Otimização Linear e Inteira Túlio A. M. Toffolo http://www.toffolo.com.br BCC464/PCC174 2018/2 Slides baseados no material de Haroldo Gambini Aula de Hoje 1 Otimização 2 Pesquisa Operacional

Leia mais

Pesquisa Operacional

Pesquisa Operacional Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Fabrício Maciel fabricio@feg.unesp.br Departamento de Produção 1 Programação linear Sumário Modelagem e limitações da Programação

Leia mais

Pesquisa Operacional

Pesquisa Operacional Pesquisa Operacional Análise de Sensibilidade Algébrica Profa. Sheila Morais de Almeida DAINF-UTFPR-PG abril - 016 1 Análise de Sensibilidade Algébrica Variações do Lado Direito Variações na Função Objetivo

Leia mais

Disciplina que estuda métodos analíticos para auxiliar na tomada de decisões.

Disciplina que estuda métodos analíticos para auxiliar na tomada de decisões. Edgard Jamhour Disciplina que estuda métodos analíticos para auxiliar na tomada de decisões. Procura encontrar soluções ótimas ou próximo de ótimas para problemas de engenharia industrial, economia e finanças,

Leia mais

Vânio Correia Domingos Massala

Vânio Correia Domingos Massala Optimização e Decisão 06/0/008 Método do Simplex Vânio Correia - 5567 Domingos Massala - 58849 INSTITUTO SUPERIOR TÉCNICO Generalidades do Método do Simplex Procedimento algébrico iterativo para resolver

Leia mais

Exemplo: Maximização de lucros em uma chocolateria que produz os seguintes produtos: (1) Chocolate Pyramide (2) Chocolate Pyramide Nuit

Exemplo: Maximização de lucros em uma chocolateria que produz os seguintes produtos: (1) Chocolate Pyramide (2) Chocolate Pyramide Nuit Universidade Tecnológica Federal do Paraná Professor Murilo V. G. da Silva Notas de aula Estrutura de Dados 2 (Aula 09) Conteúdos da Aula: [DPV06 7.1, 7.2, 7.3] [Observação: Estas notas de aula são apenas

Leia mais

Exemplos de modelos de PL ou PI

Exemplos de modelos de PL ou PI Exemplos de modelos de PL ou PI Prof. Eduardo Uchoa http://www.logis.uff.br/~uchoa/poi/ 1 Como funciona a PO? Toda a PO está baseada na construção de modelos matemáticos para representar de forma simplificada

Leia mais

Pesquisa Operacional. Ementa. Prof. Edézio

Pesquisa Operacional. Ementa. Prof. Edézio Ementa Pesquisa Operacional A apresentação da PO Modelos e forma-padrão de PPL Solução gráfica de um PPL O algoritmo Simplex Teoria dos Jogos Livro texto Silva, Ermes Medeiros..et al.l., Pesquisa Operacional,

Leia mais

PROGRAMAÇÃO LINEAR 1. A TEORIA DA PROGRAMAÇÃO LINEAR 2. MÉTODO GRÁFICO 3. MÉTODO SIMPLEX 4. ANÁLIDE DE SENSIBILIDADE 5. APLICAÇÕES

PROGRAMAÇÃO LINEAR 1. A TEORIA DA PROGRAMAÇÃO LINEAR 2. MÉTODO GRÁFICO 3. MÉTODO SIMPLEX 4. ANÁLIDE DE SENSIBILIDADE 5. APLICAÇÕES UNIVERSIDADE FEDERAL DA BAHIA - UFBA ESCOLA POLITÉCNICA DEPARTAMENTO DE ENGENHARIA MECÂNICA DEM CURSO DE ENGENHARIA DE PRODUÇÃO PROGRAMAÇÃO LINEAR PESQUISA OPERACIONAL PARTE II 1. A TEORIA DA PROGRAMAÇÃO

Leia mais

Algoritmo Aproximação. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3

Algoritmo Aproximação. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Algoritmo Aproximação Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Heurísticas para Problemas NP- Completo Heurística: algoritmo que pode produzir um bom resultado (ou até a solução ótima),

Leia mais

Combinando inequações lineares

Combinando inequações lineares Combinando inequações lineares A multiplicação por um número > 0 não altera uma inequação 2x x 5 4x 2x 0 2 2 A soma de duas inequações (com o mesmo sentido) produz uma inequação válida x 3x + x 3 2 + 5x

Leia mais

PESQUISA OPERACIONAL APLICADA A LOGÍSTICA

PESQUISA OPERACIONAL APLICADA A LOGÍSTICA PESQUISA OPERACIONAL APLICADA A LOGÍSTICA Pós-Graduação em Logística e Supply Chain Valdick Sales 1 APRESENTAÇÃO Valdick sales Graduado em Ciência da Computação pela UFPE. Pós-Graduado em Redes e Banco

Leia mais

Aula 03: Algoritmo Simplex (Parte 2)

Aula 03: Algoritmo Simplex (Parte 2) Aula 03: Algoritmo Simplex (Parte 2) Otimização Linear e Inteira Túlio A. M. Toffolo http://www.toffolo.com.br BCC464/PCC174 2018/2 Slides baseados no material de Haroldo Gambini Previously... Aula anterior:

Leia mais

3- O MÉTODO SIMPLEX Introdução e fundamentos teóricos para o Método Simplex

3- O MÉTODO SIMPLEX Introdução e fundamentos teóricos para o Método Simplex 3- O MÉTODO SIMPLEX 3.1- Introdução O Método Simplex é uma técnica utilizada para se determinar, numericamente, a solução ótima de um modelo de Programação Linear. Será desenvolvido inicialmente para Problemas

Leia mais

Pesquisa Operacional. Modelos de Programação Linear. 15/10/13 UFVJM DECOM Luciana Assis

Pesquisa Operacional. Modelos de Programação Linear. 15/10/13 UFVJM DECOM Luciana Assis Pesquisa Operacional Modelos de Programação Linear 15/10/13 UFVJM DECOM Luciana Assis www.dcc.ufmg.br/~lpassis 1 Introdução Modelos de Programação Linear é básico para compreensão de todos os outros modelos

Leia mais

4- Dualidade em Programação Linear

4- Dualidade em Programação Linear 4- Dualidade em Programação Linear 4.1- Introdução Considere o problema clássico da dieta: (problema primal): Quer-se consumir quantidades de determinados alimentos de tal forma a satisfazer as necessidades

Leia mais

Álgebra Linear Semana 01

Álgebra Linear Semana 01 Álgebra Linear Semana 01 Diego Marcon 27 de Março de 2017 Conteúdo 1 Estrutura do Curso 1 2 Sistemas Lineares 1 3 Formas escalonadas e formas escalonadas reduzidas 4 4 Algoritmo de escalonamento 5 5 Existência

Leia mais

Pesquisa Operacional Aula 4 Solução Gráfica em Programação Linear

Pesquisa Operacional Aula 4 Solução Gráfica em Programação Linear Pesquisa Operacional Aula 4 Solução Gráfica em Programação Linear Prof. Marcelo Musci aula@musci.info www.musci.info Aplicável para modelos com 02 variáveis de decisão Útil para a ilustração de alguns

Leia mais

Investigação Operacional

Investigação Operacional Investigação Operacional Licenciatura em Gestão 3.º Ano Ano Lectivo 2013/14 Programação Linear Texto elaborado por: Maria João Cortinhal (Coordenadora) Anabela Costa Maria João Lopes Ana Catarina Nunes

Leia mais