Programação Linear - Parte 4

Documentos relacionados
Programação Linear/Inteira

CAPÍTULO O Método Simplex Pesquisa Operacional

MÉTODO SIMPLEX QUADRO SIMPLEX

Método Simplex Revisado

Teoria Básica e o Método Simplex. Prof. Ricardo Santos

Método Simplex das Duas Fases

que não torne uma variável básica negativa. Se esse valor for infinito, o PL é ilimitado. Caso contrário, escolha uma variável

MANUAL DO USUÁRIO SIMPLEX. Prof. Erico Fagundes Anicet Lisboa, M. Sc.

Método Simplex Resolução Algébrica. Prof. Ricardo Santos

Resolução de sistemas de equações lineares: Método de eliminação de Gauss

Algoritmo Simplex em Tabelas. Prof. Ricardo Santos

Tipos de problemas de programação inteira (PI) Programação Inteira. Abordagem para solução de problemas de PI. Programação inteira

MÉTODO SIMPLEX SOLUÇÃO INICIAL ARTIFICIAL

Exercícios de Método Simplex Enunciados

Álgebra Linear AL. Luiza Amalia Pinto Cantão. Depto. de Engenharia Ambiental Universidade Estadual Paulista UNESP

Universidade Federal de Santa Maria Centro de Ciências Naturais e Exatas Departamento de Física Laboratório de Teoria da Matéria Condensada

Sistemas de equações do 1 grau com duas variáveis LISTA 1

Semana 7 Resolução de Sistemas Lineares

Onde: A é a matriz do sistema linear, X, a matriz das incógnitas e B a matriz dos termos independentes da equação

PESQUISA OPERACIONAL: NA TOMADA DE DECISÕES ADMINISTRATIVA

Otimização Combinatória - Parte 4

CURSO DE MATEMÁTICA BÁSICA PROGRAMA DE EDUCAÇÃO TUTORIAL CENTRO DE ENGENHARIA DA MOBILIDADE

Matrizes e Sistemas Lineares. Professor: Juliano de Bem Francisco. Departamento de Matemática Universidade Federal de Santa Catarina.

TEORIA 5: EQUAÇÕES E SISTEMAS DO 1º GRAU MATEMÁTICA BÁSICA

Introdução em Engenharia. Problemas de Engenharia. Engenharia: Sérgio Haffner SÍNTESE. Conceitos Conceitos fundamentais

PRO Pesquisa Operacional II

Exercícios de Aprofundamento Mat Polinômios e Matrizes

Expressões de sequencias

UNIPAC Araguari FACAE - Faculdade de Ciências Administrativas e Exatas SISTEMAS DE INFORMAÇÃO

Inversão de Matrizes

INVESTIGAÇÃO OPERACIONAL. Programação Linear. Exercícios. Cap. III Método Simplex

UM SOFTWARE INTERATIVO PARA O ALGORITMO SIMPLEX EM PROGRAMAÇÃO LINEAR

5. O Mapa de Karnaugh

(1, 6) é também uma solução da equação, pois = 15, isto é, 15 = 15. ( 23,

Investigação Operacional

PROGRAMAÇÃO LINEAR. Formulação de problemas de programação linear e resolução gráfica

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

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

Universidade Federal de Itajubá. Instituto de Engenharia de Produção e Gestão. Pesquisa Operacional. Dualidade

. (A verificação é imediata.)

Pesquisa Operacional. Prof. José Luiz

Determinação de Uma Solução Básica Factível Inicial

Técnicas Digitais A AULA 08. Prof. João Marcos Meirelles da Silva. Sala 425

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

Definição de determinantes de primeira e segunda ordens. Seja A uma matriz quadrada. Representa-se o determinante de A por det(a) ou A.

Elvis Magno da Silva, autor Vladas Urbanavicius Júnior, autor

4. Álgebra Booleana e Simplificação Lógica. 4. Álgebra Booleana e Simplificação Lógica 1. Operações e Expressões Booleanas. Objetivos.

Matrizes. matriz de 2 linhas e 2 colunas. matriz de 3 linhas e 3 colunas. matriz de 3 linhas e 1 coluna. matriz de 1 linha e 4 colunas.

Determinantes. Matemática Prof. Mauricio José

Ficha de Exercícios nº 2

Teoria dos Grafos. Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada.

Em linguagem matemática, essa proprieade pode ser escrita da seguinte maneira: x. 1 = x Onde x representa um número natural qualquer.

Programação Linear - Parte 3

Coordenadoria de Matemática Programação Linear. Professor: Oscar Luiz T. de Rezende

Problema da Árvore Geradora Mínima

Resoluções A. Combinatória 1 3 os anos Blaidi/Walter Ago/09. Nome: Nº: Turma:

ANALISANDO AS TÉCNICAS DE SOLUÇÃO POR QUADROS E O MÉTODO SIMPLEX QUANDO EMPREGADOS NA RESOLUÇÃO DO PROBLEMA DE TRANSPORTE DE UMA INDÚSTRIA DE PNEUS

Figura 1 - Somador para dois números de 4 bits com extensores lógicos (EL) e Aritméticos(EA).

Introdução à Algoritmos. Aula 11

Disciplina: Álgebra Linear - Engenharias ], C = Basta adicionar elemento a elemento de A e B que ocupam a mesma posição na matriz.

GEOMETRIA ANALÍTICA II

Estruturas de Repetição

PESQUISA OPERACIONAL I

Departamento de Matemática da Universidade de Coimbra Álgebra Linear e Geometria Analítica Engenharia Civil Ano lectivo 2005/2006 Folha 1.

UNICAMP ª Fase MATEMÁTICA BERNOULLI COLÉGIO E PRÉ-VESTIBULAR

Determinantes. ALGA 2008/2009 Mest. Int. Eng. Electrotécnica Determinantes 1 / 17

ACD Loteca Chaves e Filtro PRO 1.0 Dicas

Aula 01 Introdução Custo de um algoritmo, Funções de complexidad e Recursão

ESCOLA SUPERIOR DE TECNOLOGIA DE VISEU

Programação Linear. Problema de produção. Transparências de apoio à disciplina de Métodos de Apoio à Decisão. Matéria prima disponível diariamente

Método Simplex. Alexandre Salles da Cunha. DCC-UFMG, Março v.02

PROVA DISCURSIVA. CESPE CEBRASPE TRT8 Aplicação: 2016

Notas de Aula Disciplina Matemática Tópico 08 Licenciatura em Matemática Osasco -2010

Resolução de Sistemas de duas Equações do 1º grau a duas incógnitas. Método de Adição Ordenada/ Gauss

Programação Linear/Inteira - Aula 5

Matemática para a Economia I - 1 a lista de exercícios Prof. - Juliana Coelho

FUNÇÃO QUADRÁTICA. Resumo

Equação e Inequação do 2 Grau Teoria

Simplex e o Problema do Transporte

Alocação de Custos pelo Método Recíproco

2 Casamento Inexato, Alinhamento de Sequências e Programação DRAFT

Programação Linear - Parte 5

Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2005.

10 - LEIS DE KIRCHHOFF

Parte 05 - Técnicas de programação (mapas de Veitch-Karnaugh)

ADIÇÃO, SUBTRAÇÃO E SIGNIFICADOS

UTILIZAÇÃO DA PROGRAMAÇÃO LINEAR E DO MÉTODO SIMPLEX PARA OTIMIZAÇÃO DA PRODUÇÃO DE PÃES EM UMA EMPRESA DE PANIFICAÇÃO

Álgebra Linear Computacional

Equilíbrio de um corpo rígido

POTENCIAÇÂO. A potenciação é uma forma de representar uma multiplicação de fatores iguais.

Primeira Prova de Análise e otimização de Código - DCC888 -

Álgebra Linear - Exercícios (Determinantes)

Unidade 3 Função Afim

PROLIN. Sistema para PROgramação LINear

INTEGRAIS INTEGRAL INDEFINIDA

Orientação a Objetos

Otm1 12/04/2012. Método Simplex Obtenção base inicial Degeneração (alguns comentários) Variáveis Canalizadas

Teoria de dualidade. Marina Andretta ICMC-USP. 19 de outubro de 2016

Transcrição:

Mestrado em Modelagem e Otimização - CAC/UFG Programação Linear - Parte 4 Profs. Thiago Alves de Queiroz Muris Lage Júnior 1/2014 Thiago Queiroz (DM) Parte 4 1/2014 1 / 18

Solução Inicial O método simplex depende de uma solução básica factível inicial (Fase I); Para problemas como: Minimizar z { = c T x Ax b sujeito a : x 0. (1) sendo b 0, temos uma solução básica factível naturalmente; Com a introdução das variáveis de folga, digamos x f, temos: Minimizar z { = c T x Ax + xf = b sujeito a : x 0, x f 0. (2) Thiago Queiroz (DM) Parte 4 1/2014 2 / 18

Solução Inicial Note que a matriz dos coeficientes das restrições é dada por [A I]; Esta matriz fornece a seguinte partição básica factível: B = I: as variáveis básicas são as variáveis de folga x b = x f ; N = A: as variáveis não-básicas são as variáveis originais xn = x; Além disso, a solução básica factível é dada por: xb = x f = b 0; xn = x = 0; Porém, em geral, uma solução básica factível inicial deve ser encontrada. Considere: Minimizar z { = c T x Ax = b sujeito a : x 0. (3) Em que A não tem uma submatriz identidade e que b 0. Thiago Queiroz (DM) Parte 4 1/2014 3 / 18

Solução Inicial A questão é como encontrar uma partição nas colunas de A m n, A = [B N], tal que exista B 1 e x B = B 1 b 0; Uma estratégia simples é fazer uma busca exaustiva e encontrar m colunas linearmente independentes para formar B, satisfazendo x B 0; Note que este procedimento pode envolver a resolução de C n m sistemas de equações lineares m m; Isto é inaceitável para problemas grandes do ponto de vista computacional; Existe um método, chamado de método das duas fases que permite resolver o problema de encontrar uma solução inicial. Thiago Queiroz (DM) Parte 4 1/2014 4 / 18

Quando há restrições de igualdade, não há variáveis de folga; Quando há restrições do tipo, há variáveis de folga, porém aparecem com o coeficiente 1 na restrição; Nestes casos, introduzimos novas variáveis, como se fossem de folga. Vejamos o caso da igualdade: Ax = b Ax + y = b x 0, y 0. Essas novas vaiáveis são chamadas variáveis artificiais: NÃO fazem parte do problema original; Devem ser eliminadas. Thiago Queiroz (DM) Parte 4 1/2014 5 / 18

Para eliminar as variáveis artificiais, utilizamos um novo objetivo; Isto resulta no problema artificial: m Minimizar z a = y i { i=1 Ax + y = b sujeito a : x 0, y 0. (4) A solução ótima desse problema deve ter y i = 0, i = 1,..., m; Os coeficientes na função objetivo artificial podem ser quaisquer números positivos; Caso haja colunas da matriz identidade na matriz A: Tais colunas devem ser utilizadas para formar a base inicial; Completar o restante das colunas com a adição das variáveis artificiais; Thiago Queiroz (DM) Parte 4 1/2014 6 / 18

Vejamos um exemplo em que não precisa adicionar variáveis artificiais em todas as restrições: Minimizar z = x 1 x 2 + 2x 3 x 1 + x 2 + x 3 = 3 sujeito a : 2x 1 x 2 + 3x 3 4 x 1 0, x 2 0, x 3 0. (5) Para ter uma base B factível, precisamos de uma matriz de ordem m = 2, ou seja, de duas colunas linearmente independentes; Note que a segunda restrição é do tipo, sendo necessário acrescentar uma variável de folga com coeficiente positivo: 2x 1 x 2 + 3x 3 + x 4 = 4, com x 4 0. Esta restrição fornece imediatamente uma variável básica, pois [ ] 0 sua coluna corresponde a uma coluna da matriz identidade. 1 Thiago Queiroz (DM) Parte 4 1/2014 7 / 18

A primeira restrição não fornece imediatamente qualquer variável básica. O mesmo seria verdade caso tal restrição fosse do tipo ; Neste caso, seguindo o método das duas fases, criamos uma variável artificial x5 a e adicionamos a tal restrição, ou seja: x 1 + x 2 + x 3 + x5 a = 3, com x 5 a 0. Note que agora temos imediatamente uma variável básica, já que outra coluna da matriz identidade está disponível; O problema artificial é: Minimizar z a = x5 a x 1 + x 2 + x 3 + x5 a = 3 sujeito a : 2x 1 x 2 + 3x 3 + x 4 = 4 x 1 0, x 2 0, x 3 0, x 4 0, x 5 0. (6) Logo, podemos definir as variáveis básicas por x B = (x a 5, x 4); Thiago Queiroz (DM) Parte 4 1/2014 8 / 18

No caso geral, o problema artificial sempre tem uma partição básica factível óbvia: B = I: variáveis básicas xb = y; N = A: variáveis não-básicas x N = x. Com isso, podemos aplicar o método simplex para obter uma base que não contenha variáveis artificiais; O objetivo é chegar em uma base que contenha apenas as variáveis do problema (podendo ter as folgas) e com as colunas originais da matriz A; Isto acontece quando a função objetivo artificial alcançar o valor 0 (zero), isto é, z a = 0, que é o mínimo para o objetivo artificial; Com isso, o problema artificial tem, em geral, infinitas soluções ótimas, isto é, qualquer solução factível do problema original e solução ótima para o problema artificial. Thiago Queiroz (DM) Parte 4 1/2014 9 / 18

Por outro lado, se o problema original for infactível (inviável), então o problema artificial tem solução ótima z a 0; Neste caso, podemos parar a resolução e retornar que o problema original é inviável; Em resumo, o método das duas fases consiste em: Fase I: resolver o problema artificial com o simplex; Fase II: resolver o problema original com o simplex, a partir da base factível obtida na Fase I. No final da Fase I, chegando em z a = 0, podemos eliminar (todas) as variáveis artificiais e as respectivas colunas do modelo, caso tais variáveis estejam fora da base; Thiago Queiroz (DM) Parte 4 1/2014 10 / 18

Se existir alguma variável artificial na base, devemos proceder da seguinte maneira: Etapa 1: Selecione uma variável artificial com coeficiente igual a zero na função objetivo para sair da solução básica e designe sua linha como a linha do pivô; A variável que entra pode ser qualquer variável não-básica (não-artificial) que tenha coeficiente não-zero (positivo ou negativo) na linha do pivô. Execute a operação de pivoteamento; Etapa 2: Remova a coluna e a variável artificial que acabou de sair da base. Se todas as variáveis artificiais com coeficiente igual a zero tiverem sido removias, passe para a Fase II. Caso contrário, volte para a Etapa 1. Thiago Queiroz (DM) Parte 4 1/2014 11 / 18

Exemplo. Resolva o seguinte problema de programação linear usando o método das duas fases. Maximizar z = x 1 + x 2 x 1 + 4x 2 4 sujeito a : 3x 1 + x 2 = 1 x 1 0, x 2 0. (7) 1. Coloque as restrições na forma padrão, adicionando uma variável de folga onde for preciso: primeira restrição; x 1 + 4x 2 x 3 = 4, com x 3 0, 2. Como não é possível obter uma base diretamente, com B = I, acrescente variáveis artificiais nas restrições que originalmente eram = e : primeira e segunda restrição; Thiago Queiroz (DM) Parte 4 1/2014 12 / 18

Na primeira restrição, adicionamos a variável artificial y 1 0: x 1 + 4x 2 x 3 + y 1 = 4; Na segunda restrição, adicionamos a variável artificial y 2 0: 3x 1 + x 2 + y 2 = 1; O problema artificial é: Minimizar z a = y 1 + y 2 x 1 + 4x 2 x 3 + y 1 = 4 sujeito a : 3x 1 + x 2 + y 2 = 1 x 1 0, x 2 0, x 3 0, y 1 0, y 2 0. (8) 3. Aplica-se o simplex (em tabelas) para resolver o problema artificial; Thiago Queiroz (DM) Parte 4 1/2014 13 / 18

Para montar a tabela, a linha da função objetivo artificial consiste na operação das linhas: linha da função objetivo artificial - linhas que contém variáveis artificiais: Linha original de z a y 1 + y 2 = 0 - Linha da restrição que contém y 1 x 1 + 4x 2 x 3 + y 1 = 4 - Linha da restrição que contém y 2 3x 1 + x 2 + y 2 = 1 = nova linha de z a = 4x 1 + 5x 2 + x 3 = 5. Colocar a linha da função objetivo original na forma padrão: Minimizar z = x 1 x 2 Montar a tabela simplex inicial do problema artificial e resolver com o simplex em tabelas; No final da FASE I, aplicar o procedimento para eliminar as variáveis artificiais; Iniciar a FASE II com a tabela resultante da FASE I, aplicando o simplex em tabelas normalmente. Thiago Queiroz (DM) Parte 4 1/2014 14 / 18

Método do M-grande Um objetivo alternativo para o problema artificial consiste em considerar a função objetivo original; Neste caso, as variáveis artificiais são penalizadas exageradamente de modo que sejam nulas na solução ótima (caso o problema tenha solução); Considere um valor M muito grande (se o problema original for de minimizar) ou muito pequeno (se o problema original for de maximizar); Dado o problema original com uma função de minimizar, então a nova função objetivo é: Minimizar z a = c T x + M(y 1 + y 2 +... + y m ). Após adicionar as variáveis artificias penalizadas com o coeficiente M na função objetivo, o problema pode ser resolvido normalmente com o método simplex (em tabelas); Thiago Queiroz (DM) Parte 4 1/2014 15 / 18

Método do M-grande Note que o valor exagerado para as variáveis artificiais deve orientar o método simplex para substituir as variáveis artificias da base por outras de menor coeficiente na função objetivo; Se o problema não possuir solução factível, então no final da aplicação do método simplex alguma variável artificial será básica na solução ótima encontrada; Este procedimento é chamado método do M-grande tendo desempenho similar ao método das duas fases; Exemplo. Aplique o método do M-grande para resolver o problema abaixo: Maximizar z = x 1 + x 2 x 1 + 4x 2 4 sujeito a : 3x 1 + x 2 = 1 x 1 0, x 2 0. (9) Thiago Queiroz (DM) Parte 4 1/2014 16 / 18

Método do M-grande 1. Coloque as restrições na forma padrão, adicionando uma variável de folga onde for preciso: primeira restrição; x 1 + 4x 2 + x 3 = 4, com x 3 0. 2. Como não é possível obter uma base diretamente, com B = I, acrescente variáveis artificiais nas restrições que originalmente eram = e : primeira e segunda restrição; Na primeira restrição, adicionamos a variável artificial y 1 0: x 1 + 4x 2 x 3 + y 1 = 4; Na segunda restrição, adicionamos a variável artificial y 2 0: 3x 1 + x 2 + y 2 = 1; 3. Na função objetivo do problema acrescente a variável artificial com um coeficiente (valor de M) muito grande, se for de maximização; Maximizar z a = x 1 + x 2 100y 1 100y 2. 4. Escreva o novo problema de otimização que deverá ser resolvido via simplex (em tabelas); Thiago Queiroz (DM) Parte 4 1/2014 17 / 18

Método do M-grande O novo problema de otimização linear é: Minimizar z = x 1 x 2 + 100y 1 + 100y 2 x 1 + 4x 2 x 3 + y 1 = 4 sujeito a : 3x 1 + x 2 + y 2 = 1 x 1 0, x 2 0, x 3 0, y 1 0, y 2 0. (10) 5. Aplique o método simplex (em tabelas) e retorne a solução encontrada; 6. Se alguma variável artificial estiver na solução final (ótima), aplique o procedimento para eliminar a variável artificial; Note que uma variável artificial não tem significado (interpretação) para o problema. Ela foi adicionada apenas para obter uma base viável inicial. Thiago Queiroz (DM) Parte 4 1/2014 18 / 18