Regras para evitar ciclagem

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

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

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

Degenerescência. Marina Andretta ICMC-USP. 19 de outubro de 2016

Teoremas de dualidade

Existência e otimalidade de pontos extremos

Representação de poliedros

Cones e raios extremos

Pontos extremos, vértices e soluções básicas viáveis

Poliedros na forma padrão

Lema de Farkas e desigualdades lineares

Notações e revisão de álgebra linear

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

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

5 Análise de Sensibilidade

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

Método de Newton truncado

Resolução de problemas com apenas restrições lineares de igualdade

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

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.

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

Programação Linear - Parte 3

Método do Ponto Fixo

Interpolação polinomial: Diferenças divididas de Newton

Marina Andretta. 17 de setembro de Baseado no livro Numerical Optimization, de J. Nocedal e S. J. Wright.

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

Resolução de sistemas de equações não-lineares: Método Iterativo Linear

Resolução de sistemas de equações não-lineares: Método Iterativo Linear

Método de restrições ativas para minimização em caixas

Problemas NP-completos

Método dos gradientes (ou método de máxima descida)

Método do Lagrangiano aumentado

Resolução de sistemas de equações lineares: Método do Gradiente

Interpolação polinomial: Polinômio de Lagrange

Algoritmo Simplex para Programação Linear I

Algoritmos de aproximação - Método primal-dual

3 O Método Simplex. 3.1 Condições de otimalidade

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

Pesquisa Operacional. Prof. José Luiz

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

Como resolver o QFEMUP usando otimização

Programação Linear/Inteira

Programação Matemática. Método Simplex

Algoritmos de aproximação - Problema de cobertura por conjuntos

Método prático para extrair uma base de um conjunto de geradores de um subespaço de R n

Método de Newton modificado

PESQUISA OPERACIONAL Definições e Teoremas Básicos. Professor Volmir Wilhelm Professora Mariana Kleina

Conceitos e Teoremas. Tecnologia da Decisão I TP065. Profª Mariana

Resolução de sistemas de equações lineares: Fatorações de matrizes

Resolução de sistemas de equações lineares: Fatorações de matrizes

Resolução de sistemas de equações lineares: Método dos Gradientes Conjugados

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

Interpolação polinomial: Diferenças divididas de Newton

Método das Secantes. Marina Andretta/Franklina Toledo ICMC-USP. 4 de setembro de 2012

Resolução de sistemas de equações não-lineares: Método de Newton

Determinação numérica de autovalores e autovetores: Método das Potências Inversas

Programação Linear. Dual Simplex: Viabilidade Dual Método Dual Simplex

Programação Linear/Inteira - Aula 5

Lógica do Método Simplex: Passar de Solução Básica Factível para outra Solução Básica, buscando melhorar a Função Objetivo e manter factibilidade

TP052-PESQUISA OPERACIONAL I Algoritmo Dual Simplex. Prof. Volmir Wilhelm Curitiba, Paraná, Brasil

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

Determinação numérica de autovalores e autovetores: Método das Potências Inversas

Método de restrições ativas para minimização com restrições lineares

Aulas 6 / 05 de setembro

Resolução de sistemas de equações lineares: Fatorações de matrizes

Marina Andretta/Franklina Toledo. 18 de outubro de Baseado no livro Análise Numérica, de R. L. Burden e J. D. Faires.

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

2 Geometria e Programação Linear

Pesquisa Operacional

Matrizes. Marina Andretta. 17 de abril de 2017 ICMC-USP. Marina Andretta (ICMC-USP) sme0230-ipc 17 de abril de / 30

Resolvendo algebricamente um PPL

Determinação de raízes de polinômios: Método de Briot-Ruffini-Horner

étodos uméricos SISTEMAS DE EQUAÇÕES LINEARES (Continuação) Prof. Erivelton Geraldo Nepomuceno PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA

Determinação de raízes de polinômios: Método de Briot-Ruffini-Horner

Vetores. Marina Andretta. 11 de abril de 2016 ICMC-USP. Marina Andretta (ICMC-USP) sme0230-ipc 11 de abril de / 20

1 Subespaços Associados a uma Matriz

Métodos para resolver problemas de otimização restrita

Algoritmos para resolução de problemas de minimização irrestrita

Unicidade da Forma Escalonada Reduzida de uma Matriz

Determinação numérica de autovalores e autovetores: Método de Jacobi

4-1 PESQUISA OPERACIONAL MÉTODO SIMPLEX

Marina Andretta. 02 de agosto de 2010

Investigação Operacional

Algoritmos de aproximação - Problema da Mochila

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

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

MATRIZES - PARTE Mais exemplos Multiplicação de duas matrizes AULA 26

Maristela Santos. Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo

LIMITES E CONTINUIDADE

Cálculo Numérico BCC760

Otimização Aplicada à Engenharia de Processos

Tema: Método da Eliminação de Gauss

4- Dualidade em Programação Linear

Sistemas de Equações Lineares e Equações Vectoriais Aula 2 Álgebra Linear Pedro A. Santos

Espaços Euclidianos. Espaços R n. O conjunto R n é definido como o conjunto de todas as n-uplas ordenadas de números reais:

SME0300 Cálculo Numérico Aula 11

Professor João Soares 20 de Setembro de 2004

Transcrição:

Regras para evitar ciclagem 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 19 de outubro de 2016 1 / 18

Regras para evitar ciclagem Vamos agora apresentar duas regras para evitar ciclagem, que fazem com que o Método Simplex tenha garantia de término mesmo no caso de problemas não-degenerados. Assim, como corolário, temos que se o custo ótimo é finito, existe uma base ótima, ou seja, uma base que satisfaz B 1 b 0 e c T = c T c T B B 1 A 0 T. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 2 / 18

Ordem lexicográfica Vamos apresentar agora a regra lexicográfica de pivotamento, que foi criada ao analisar o comportamento do Método Simplex em um problema degenerado quando o vetor do lado direito b é perturbado. Definição 1. Um vetor u IR n é dito lexicograficamente maior (ou menor) do que outro vetor v IR n se u v e a primeira componente não-nula de u v é positiva (ou negativa, respectivamente). Simbolicamente, escrevemos u L > v ou u L < v. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 3 / 18

Ordem lexicográfica Por exemplo, (0, 1, 2, 3) L > (0, 1, 0, 3), (1, 4, 9, 0) L < (2, 9, 9, 4). Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 4 / 18

Regra lexicográfica de pivotamento P1. Escolha uma coluna A j arbitrária para entrar na base, desde que o custo reduzido c j seja negativo. Seja u = B 1 A j a j-ésima coluna do tableau. P2. Para cada i tal que u i > 0, divida a i-ésima linha do tableau (incluindo a entrada na coluna 0) por u i e escolha a menor linha lexicograficamente. Se a linha l é uma linha lexicograficamente menor, então a l-ésima variável básica x B(l) sai da base. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 5 / 18

Exemplo Considere o seguinte tableau (a linha 0 está omitida) e suponha que a coluna pivô seja a terceira (j = 3). 1 0 5 3... 2 4 6-1... 3 0 7 9... Note que, para determinar a variável que sai da base, temos um empate, já que x B(1) /u 1 = 1/3 e x B(3) /u 3 = 3/9 = 1/3. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 6 / 18

Exemplo Dividimos, então, a primeira linha do tableau por u 1 = 3 e a terceira linha por u 3 = 9: 1/3 0 5/3 1... * * * *... 1/3 0 7/9 1... O empate entre a primeira e a terceira linhas é desfeito fazendo uma comparação lexicográfica entre estas duas linhas. Como 7/9 < 5/3, a terceira linha é lexicograficamente menor e ela é escolhida como pivô. Ou seja, a variável x B(3) é escolhida para sair da base. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 7 / 18

Regra lexicográfica de pivotamento Note que a regra lexicográfica de pivotamento sempre leva a uma escolha única para a variável que vai sair da base. Se esta escolha não fosse única, haveria duas linhas do tableau que são iguais, a menos da multiplicação por um escalar. Mas isso significaria que B 1 A tem posto menor do que m e, portanto, A tem posto menor do que m. Isso contradiz a hipótese de que as linhas de A são linearmente independentes. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 8 / 18

Regra lexicográfica de pivotamento Teorema 1. Suponha que o algoritmo Simplex começa com todas as linhas no tableau, com exceção da linha 0, lexicograficamente positivas. Suponha que a regra lexicográfica de pivotamento seja usada. Então: (a) Toda linha do tableau simplex, com exceção da linha 0, permanece lexicograficamente positiva durante a execução do algoritmo. (b) A linha 0 aumenta lexicograficamente estritamente a cada iteração. (c) O Método Simplex termina depois de um número finito de iterações. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 9 / 18

Prova do Teorema 1 Prova: Primeiramente, vamos mostrar (a), ou seja, toda linha do tableau simplex, com exceção da linha 0, permanece lexicograficamente positiva durante a execução do algoritmo. Suponha que todas as linhas do tableau, com exceção da linha 0, sejam lexicograficamente positivas no início de uma iteração do Simplex. Suponha que x j entra na base e que a linha l é a linha pivô. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 10 / 18

Prova do Teorema 1 De acordo com a regra lexicográfica de pivotamento, temos que u l > 0 e (l-ésima linha) u l L < (i-ésima linha) u i, (1) para i l e u i > 0. Para atualizar o tableau, a l-ésima linha é dividida pelo elemento pivô positivo u l e, portanto, permanece lexicograficamente positiva. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 11 / 18

Prova do Teorema 1 Considere a i-ésima linha e suponha que u i < 0. Para zerar o elemento (i, j) do tableau, precisamos somar um múltiplo positivo da linha pivô à linha i. Pelo fato de ambas as linhas serem lexicograficamente positivas, a i-ésima linha permanecerá lexicograficamente positiva depois desta soma. Finalmente, considere a i-ésima linha e suponha que u i > 0 e i l. Temos que (nova linha i) = (antiga linha i) u i u l (antiga linha l). Por causa da desigualdade lexicográfica (1), que é satisfeita pelas linhas antigas, a nova linha i também é lexicograficamente positiva. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 12 / 18

Prova do Teorema 1 Agora, vamos mostrar (b), ou seja, a linha 0 aumenta lexicograficamente estritamente a cada iteração. Note que, no início de uma iteração, o custo reduzido da coluna pivô é negativo. Para transformá-lo em 0, precisamos somar um múltiplo positivo da linha pivô. Como a linha pivô é lexicograficamente positiva, a linha 0 cresce lexicograficamente estritamente. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 13 / 18

Prova do Teorema 1 Finalmente, vamos mostrar (c), ou seja, o Método Simplex termina depois de um número finito de iterações. Como a linha 0 cresce lexicograficamente a cada iteração, ela nunca volta a um valor anterior. Como a linha 0 é completamente determinada pela base atual, nenhuma base pode se repetir. Portanto, o Método Simplex deve terminar depois de um número finito de iterações. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 14 / 18

Regra lexicográfica de pivotamento A regra lexicográfica de pivotamento pode ser usada diretamente quando o tableau completo é usado. Quando o Método Simplex revisado é usado e a matriz B 1 é calculada explicitamente, esta regra também pode ser usada. No entanto, em implementações sofisticadas do Método Simplex revisado, a matriz B 1 não é calculada explicitamente e esta regra não é adequada. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 15 / 18

Regra lexicográfica de pivotamento Note que, para aplicar a regra lexicográfica de pivotamento, precisamos que o tableau inicial seja lexicograficamente positivo. Se temos um tableau inicial, podemos renomear as variáveis de forma que as variáveis básicas sejam as m primeiras. Isso é equivalente a reordenar o tableau de modo que as primeiras m colunas de B 1 A formem uma matriz identidade. Este novo tableau tem linhas lexicograficamente positivas, como desejado. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 16 / 18

Regra de Bland A regra de pivotamento do menor índice, conhecida como regra de Bland, é a seguinte. P1. Encontre o menor j para o qual o custo reduzido c j é negativo e faça a coluna A j entrar na base. P2. De todas as variáveis x i empatadas no teste para escolher a variável que sai da base, escolha a que tem o menor valor de i. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 17 / 18

Regra de Bland Esta regra é compatível com a implementação do Simplex revisado em que os custos reduzidos das variáveis não-básicas são calculados um a um, na ordem, até que um valor negativo seja encontrado. Usando esta regra de pivotamento, sabe-se que não ocorre ciclagem e que o Método Simplex tem garantia de terminar em um número finito de iterações. Marina Andretta (ICMC-USP) sme0211 - Otimização linear 19 de outubro de 2016 18 / 18