UMA ABORDAGEM IMPLÍCITA PARA O MÉTODO M-GRANDE

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

Download "UMA ABORDAGEM IMPLÍCITA PARA O MÉTODO M-GRANDE"

Transcrição

1 UMA ABORDAGEM IMPLÍCITA PARA O MÉTODO M-GRANDE Pedro Augusto Munari Junior, Marcos Nereu Arenales Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo Caixa Postal 668, São Carlos - SP, CEP , Brasil munari@icmc.usp.br, arenales@icmc.usp.br RESUMO Um procedimento bastante conhecido para a obtenção de uma solução básica factível é o método M-grande. Entretanto, a dificuldade na escolha do parâmetro de penalização M é retratada na literatura de otimização linear como uma desvantagem do método. Em geral, um valor muito pequeno para M leva à obtenção de uma solução infactível, enquanto um valor muito grande pode resultar em um elevado número de iterações e na introdução de erros numéricos. Neste trabalho, é proposta uma modificação no método M-grande que considera M implicitamente durante a resolução do problema. Assim, a desvantagem retratada na literatura deixa de existir. Os aspectos conceituais dessa abordagem são descritos e os resultados computacionais obtidos na resolução de problemas da biblioteca NETLIB confirmam a eficiência da proposta. PALAVRAS CHAVE: otimização linear, método simplex, M-grande. ABSTRACT A well known procedure to obtain a basic feasible solution is the Big-M method. However, the difficulty in choosing the penalty parameter M is reported in the linear optimization literature as a disadvantage of the method. In general, a too small value for M produces an infeasible solution whereas a too high value can result in a large number of iterations and insert numerical errors. In this paper, we propose a change in the Big-M method which handles implicitly the parameter M when solving the problem. Hence, the disadvantage reported in the literature ceases to exist. We address conceptual aspects of this approach and computational results are given for a set of problems of the NETLIB library that confirm the efficiency of the method. KEYWORDS: linear optimization, simplex method, Big-M. 2193

2 1. Introdução A modelagem de problemas por meio da otimização linear foi formalizada por Dantzig em 1947 que, em seguida, desenvolveu também um método prático de solução, o qual chamou de método simplex. Desde então, um grande número de pesquisadores tem contribuído na área de otimização linear de diferentes maneiras, incluindo desenvolvimentos teóricos e computacionais e novas aplicações. A aplicação do método simplex para a resolução de um problema de otimização linear exige que uma solução básica factível seja conhecida. Desse modo, deve-se definir uma base inicial factível para a inicialização do método. O número de iterações e o tempo de execução do método simplex para a resolução de um problema são extremamente dependentes da base inicial escolhida. A obtenção de uma boa base inicial é ainda um ramo de investigação na área de otimização linear, como pode ser constatado nos trabalhos de Vieira Junior e Lins (2005), Hu (2007) e na literatura citada por esses autores. Um método bastante conhecido para a obtenção de uma base factível é o método M- grande. Este método é conceitualmente simples e sua implementação computacional é direta a partir do método simplex. Entretanto, dependendo da escolha do parâmetro de penalização M, dificuldades numéricas podem surgir durante a resolução do problema e até mesmo uma solução ótima equivocada pode ser obtida, fazendo com que a utilização do método M-grande seja evitada. Essas desvantagens envolvendo o método M-grande são retratadas por trabalhos recentes da literatura. Koberstein e Suhl (2007) relatam que a principal razão para o método M- grande não ser utilizado na prática é a dificuldade na escolha de M. Segundo os autores, um valor muito grande para M pode levar a problemas numéricos e a um número excessivo de iterações, enquanto um valor muito pequeno pode não produzir uma solução básica factível. Vieira Junior e Lins (2005) propõem uma nova técnica para a construção de uma base inicial que tem grandes chances de ser próxima da base ótima. Entretanto, a base obtida pode não ser factível e, então, os autores sugerem a utilização do método M-grande, porém alertando para a desvantagem computacional do método. Arsham (2007) cita que o método M-grande pode causar erros graves, fazendo o infactível parecer factível quando M é muito pequeno. Além disso, erros de arredondamento e overflow computacional podem destruir a precisão numérica da solução quando M é muito grande. Livros-texto de otimização linear também abordam esse assunto. Bazaraa (1990) descreve detalhadamente o método M-grande e fecha sua descrição com a pergunta: Quão grande deve ser o M-grande?. De acordo com o autor, M não pode ser escolhido apenas olhando-se para a magnitude dos coeficientes da função objetivo. Dado que o problema a ser resolvido é factível, M deve ser grande o bastante para que alguma solução básica factível, com todas as variáveis artificiais iguais a zero, tenha valor estritamente melhor que a melhor solução básica factível que não tenha todas as variáveis artificiais nulas. Porém, essa é uma condição teórica e mesmo quando satisfeita, o método ainda não está livre das dificuldades numéricas. Bertsimas e Tsitsiklis (1997) comentam que não há a necessidade de se fixar um valor numérico para M, basta considerá-lo como um parâmetro indeterminado durante a resolução do problema. Para isso, sugerem que a comparação entre expressões contendo M seja realizada considerando-o suficientemente grande. Entretanto, na descrição dos autores, os termos que não envolvem M são desprezados na comparação dessas expressões, fazendo com que a função objetivo do problema original seja ignorada nas expressões de custos reduzidos contendo o parâmetro. Além disso, a abordagem é descrita por meio da resolução de um problema particular usando o método simplex na forma tableau, sem expor as modificações necessárias para a implementação computacional da proposta. 2194

3 Considerando essa revisão da literatura, uma implementação computacional do método M-grande é sugerida neste trabalho, tratando o parâmetro M implicitamente durante a resolução do problema. Assim como na abordagem que atribui um valor numérico para M, os coeficientes da função objetivo do problema são considerados na comparação de custos reduzidos envolvendo o parâmetro. As modificações necessárias no método simplex para considerar M implicitamente são expostas e discutidas e os testes computacionais realizados ilustram a eficiência da abordagem em problemas de otimização linear da biblioteca NETLIB ( Na seção a seguir, é dada uma breve revisão sobre a obtenção de soluções básicas factíveis para problemas de otimização linear, envolvendo o método de duas fases e o método M-grande. Na Seção 3, é apresentada uma abordagem implícita para o método M-grande. Os testes realizados para a comparação dessa abordagem com o método M-grande convencional são expostos e discutidos na Seção 4. Por fim, as conclusões obtidas são apresentadas juntamente com a descrição de trabalhos futuros na Seção Inicialização do método simplex Os problemas de otimização linear consistem na minimização ou maximização de uma função linear sujeita a um número finito de restrições lineares sobre as variáveis envolvidas. Considere o seguinte problema de otimização linear na forma padrão: minimizar f(x) = c t x (1) sujeito a Ax = b (2) x 0 (3) com A R m n, x R n, c R n, b R m, m < n e posto(a) = m. Em (1) temos a função objetivo do problema que, nesse caso, será minimizada. As equações do sistema linear (2) recebem o nome de restrições do problema e as desigualdades em (3) são as condições de não-negatividade. Em geral, um problema de otimização linear na forma padrão possui diversas variáveis de folga, utilizadas para expressar restrições de desigualdade em forma de equações. Uma variável de folga é toda aquela cuja coluna correspondente em A é uma coluna da matriz identidade. O motivo de apresentar o problema na forma padrão é facilitar a descrição do método simplex e da teoria envolvida. Existem diversas outras formas equivalentes para se descrever um problema de otimização linear, as quais permitem a exploração de certas particularidades durante a resolução e podem levar a abordagens mais eficientes, como apresentado em Sousa et al. (2005) e Maros (2003). A aplicação do método simplex para a resolução de problemas de otimização linear exige que uma base inicial factível seja conhecida. Desse modo, o primeiro passo antes da aplicação do método é definir uma base inicial. Se essa base for factível, o método simplex pode ser iniciado. Caso contrário, dois caminhos são possíveis: utiliza-se uma abordagem de duas fases, caracterizada pela existência de uma fase inicial bem determinada, denominada Fase-I. Nesta fase, um problema auxiliar é resolvido e uma solução básica factível para o problema original é obtida. Em uma segunda etapa, denominada Fase-II, o método simplex é iniciado com a base factível obtida na Fase-I; ou utiliza-se uma abordagem de fase única, na qual o método simplex pode ser iniciado sem que se conheça uma base factível correspondente e a factibilidade da solução é obtida enquanto se busca, ao mesmo tempo, uma solução ótima do problema. Para isso, a função objetivo do problema deve ser modificada pela adição de termos que agem como penalizadores de soluções infactíveis. 2195

4 Aspectos teóricos e computacionais sobre a inicialização do método simplex envolvendo as abordagens citadas acima podem ser encontrados em Arenales et al. (2007) e Maros (2003). Uma maneira bastante simples de se construir uma base inicial para um problema de otimização linear é por meio da introdução de variáveis artificiais. Dado um problema de otimização linear na forma padrão (1)-(3), uma variável artificial y i > 0 é adicionada a cada restrição do problema, fazendo com que as restrições do problema sejam redefinidas como: Ax + Dy = b (4) x 0, y 0 (5) com y = (y 1, y 2,..., y m ) e D uma matriz diagonal com valores 1 e 1, satisfazendo D 1 b 0. Sem perda de generalidade, será considerado b 0, de modo que D = I. Assim, uma base inicial factível B = I com solução inicial (x, y) = (0, b) está sempre disponível para um problema com o conjunto de restrições (4) e (5). A introdução de variáveis artificiais tem o inconveniente de aumentar a dimensão do problema, já que são adicionadas m variáveis. Entretanto, a facilidade conceitual e prática dessa técnica é incontestável. Uma maneira de melhorá-la é através da utilização das variáveis de folga do problema original. Assim, uma variável artificial só é adicionada a uma restrição se não houver uma variável de folga disponível nessa restrição, ou se a variável de folga existir mas levar a uma solução básica infactível. Dada uma solução ( x, ȳ) das equações descritas em (4) e que satisfaça (5), tem-se A x = b se, e somente se, ȳ = 0. Em outras palavras, x será uma solução factível para o problema original quando cada variável artificial for nula. Para se obter um par ( x, ȳ) com tal característica, duas abordagens podem ser utilizadas, uma de duas fases e outra de fase única. A abordagem por duas fases cria um problema auxiliar a partir do conjunto de restrições (4) e (5), o qual também é um problema de otimização linear, cuja função objetivo é definida pela soma das variáveis artificiais. Matematicamente, o problema auxiliar é dado por: minimizar sujeito a f a (y) = m i=1 y i Ax + Iy = b x 0, y 0, Utilizando-se a base B = I, o método simplex pode ser aplicado a esse problema auxiliar e caso a solução ótima ( x, ȳ) obtida satisfaça ȳ = 0 tem-se x como solução factível do problema original, podendo ser iniciada a Fase-II. Note que a função objetivo do problema original não é considerada no problema auxiliar, fazendo com que essa abordagem obtenha uma solução factível x sem considerar sua otimalidade. A abordagem de fase única utilizando variáveis artificiais é conhecida na literatura como método M-grande. Nessa abordagem, as variáveis artificiais são incorporadas à função objetivo do problema original, porém penalizadas de acordo com um valor M > 0 suficientemente grande para que não seja vantajoso mantê-las em valores positivos. Sendo assim, o problema original é redefinido como: minimizar sujeito a f(x, y) = c t x + M m i=1 y i Ax + Iy = b x 0, y 0, Esse problema é chamado de problema M-grande e vale ressaltar que não corresponde a um problema auxiliar, mas sim à redefinição do problema original. O método M-grande consiste em aplicar o método simplex sobre o problema M-grande. A solução ótima obtida 2196

5 (x, y ) é analisada e, dependendo do resultado obtido, uma solução ótima para o problema original pode ter sido encontrada. Se y > 0 então o problema original é infactível. Caso contrário, tem-se y = 0 e x é solução ótima do problema original. Se o problema original for ilimitado então o problema M-grande também será. Até o momento, o parâmetro M foi considerado suficientemente grande. Entretanto, como definir um valor numérico para M? Infelizmente, não existe uma resposta direta para essa pergunta. Além de um bom valor para M depender do problema que se está resolvendo, efeitos numéricos também devem ser levados em conta. Um valor muito pequeno pode fazer com que uma solução do problema M-grande seja infactível para o problema original e um valor grande demais pode levar a um elevado número de iterações e à introdução de erros numéricos durante a resolução do problema. Conforme retratado na literatura, essas características fazem com que o método M-grande seja evitado e que uma abordagem de duas fases seja utilizada em implementações computacionais. Para verificar na prática como o valor escolhido para M pode influenciar o método M- grande, alguns problemas da biblioteca NETLIB foram resolvidos utilizando-se diferentes valores de M. Na Tabela 2, são apresentados os resultados obtidos na resolução dos problemas agg3, lotfi, scsd8 e ship12l pelo método, os quais possuem os respectivos valores ótimos: , 935; 25, ; 904, e , Questões relacionadas à implementação computacional do método encontram-se na Seção 4. agg3 lotfi scsd8 ship12l M IT Valor ótimo IT Valor ótimo IT Valor ótimo IT Valor ótimo , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,9193 Tabela 2. Resultados obtidos pelo método M-grande para diferentes valores de M. Como pode ser observado na Tabela 2, o número de iterações para a resolução de um problema pelo método M-grande é extremamente dependente do valor escolhido para M. Além disso, note que é difícil definir um valor único para M que seja adequado para qualquer problema. Para o problema lotfi, M = 10 2 é um valor bom pois leva à obtenção da solução ótima do problema original em relativamente poucas iterações. Entretanto, para os problemas agg3 e ship12l esse valor de M leva a uma solução infactível. Em geral, valores grandes para M estão associados a um maior o número de iterações, como pode ser observado para os problemas agg3 e ship12l com M igual e Entretanto, esse fato nem sempre é verificado, como mostra os problemas lotfi e scsd8. É importante observar que mesmo para um valor exagerado como M = o valor ótimo desses problemas não foi prejudicado por erros numéricos. Esse fato é melhor discutido na Seção 4. Pelos resultados obtidos, verifica-se que a definição de um valor adequado para o parâmetro M é determinante para a obtenção de uma solução correta em um número de iterações relativamente pequeno. Por outro lado, não existe uma regra que permita definir um bom valor para M a priore. A abordagem proposta na seção a seguir tem o objetivo de evitar essa escolha, considerando M implicitamente durante a resolução do problema. 2197

6 3. O método M-grande implícito Nesta seção é apresentada uma nova abordagem para o método M-grande, que será chamada de método M-grande implícito, na qual M é utilizado implicitamente, isto é, nenhum valor numérico é definido para M e o método simplex é modificado de modo a considerar M suficientemente grande. Uma abordagem semelhante foi proposta por Paparrizos et al. (2003) no contexto do método simplex de pontos exteriores, uma variação do método simplex que permite a infactibilidade da solução básica (Paparrizos, 1993). Além disso, os autores consideram que apenas uma variável artificial é adicionada ao problema. A abordagem aqui apresentada é mais geral pois é descrita para o método simplex convencional e não se restringe à utilização de apenas uma variável artificial. Na seção anterior, foi visto que o método M-grande redefine o problema a ser resolvido, adicionando variáveis artificiais e penalizando-as na função objetivo, por meio de um parâmetro numérico M. O problema continua sendo um problema de otimização linear na forma padrão com m restrições, porém possui agora m + n variáveis. A fim de facilitar a exposição, o problema M-grande será colocado no formato (1)-(3), de acordo com a seguinte redefinição: A := [A I ], x := [ x y ], c t := [ c t (M,..., M) t]. (6) A matriz de coeficientes do problema passa a ter a matriz identidade como submatriz, correspondendo às colunas das variáveis artificiais. O vetor de variáveis e o vetor de custos também são modificados de modo a considerar as variáveis artificiais e seus custos. O método (primal) simplex apresentado no Quadro 1 pode ser utilizado para resolver o problema M- grande, já que uma base factível B = I é conhecida. Entrada Problema de otimização linear na forma padrão com partição básica primal factível A = [B N]. A possui m linhas e m + n colunas. Passo 1 Calcule a solução básica primal: x B = B 1 b, x N = 0. Passo 2 Calcule o vetor multiplicador simplex: π t = c t B B 1. Passo 3 Teste de otimalidade: Calcule os custos reduzidos c Nj = c Nj π t a Nj, j = 1,..., n. Se c Nj 0 j então PARE! A solução básica atual é ótima! Caso contrário, obtenha k = arg min{ c Nj j = 1,..., n}. Passo 4 Calcule as coordenadas básicas da direção simplex: d B = B 1 a Nk. Passo 5 Teste da razão: Se d Bi 0 i então PARE! O problema é ilimitado! Caso contrário, obtenha l = arg min{ x Bi /d Bi d Bi < 0, i = 1,..., m}. Passo 6 Atualização da base: B = B \ {l} {k} e N = N \ {k} {l}. Redefina as matrizes B e N de acordo com os índices atualizados. Inicie uma nova iteração a partir do Passo 1. Quadro 1. Método simplex para problemas na forma padrão. Durante a resolução do problema M-grande pelo método simplex, deve ser mantido um registro de quais variáveis são legítimas e quais são artificiais para que ao se obter uma solução ótima, possa ser verificado se esta é factível para o problema original, conforme especificado pela Tabela 1. Além disso, uma vez que uma variável artificial tenha saído da base, ela não deve retornar à base, porém para as variáveis legítimas isso é permitido. Considere a primeira iteração do método simplex para a resolução do problema M- grande. A base nessa iteração é composta apenas de variáveis artificiais e tem-se B = I com x B = y = b e c t B = (M, M,..., M). Assim, o vetor multiplicador simplex no Passo 2, pode 2198

7 ser escrito como: π t = c t BB 1 = (M, M,..., M)B 1 = Me t B 1 com e t = (1, 1,..., 1). Definindo o vetor π t A = et B 1, tem-se π t = Mπ t A. (7) Desse modo, os custos reduzidos no Passo 3 podem ser calculados como: c Nj = c Nj Mπ t Aa Nj, j = 1,..., n. (8) Pelo método M-grande, M é positivo e suficientemente grande. Assim o segundo termo da diferença em (8) predomina sobre o primeiro, isto é, Mπ t A a Nj >> cnj, j = 1,..., n, sempre que πa t a N j 0. Quando esse termo é nulo, o custo reduzido é o próprio custo da variável não-básica. Sendo assim, observe que não há a necessidade de se atribuir um valor numérico para M e realizar o cálculo do custo reduzido exatamente como descrito pela expressão (8). Basta analisar os termos da expressão separadamente, levando-se em conta que M é positivo e suficientemente grande. De fato, na primeira iteração, o Passo 3 deve obter um índice k tal que c Nk MπAa t Nk c Nj MπAa t Nj, j = 1,..., n. (9) Para índices k e j arbitrários, essa desigualdade é verdadeira se, e somente se, um dos dois casos ocorre: (i) π t A a N k < π t A a N j ; ou (ii) π t A a N k = π t A a N j e c Nk c Nj. Note que esse resultado é válido mesmo quando πa t a N j = 0, para algum j. As expressões dos demais passos do método não dependem do vetor de custos, seja direta ou indiretamente. Dessa maneira, o parâmetro M não é utilizado em nenhum outro cálculo da iteração e não há necessidade de se analisar os demais passos. Considere agora uma iteração qualquer na resolução do problema M-grande pelo método simplex. Se nenhuma variável artificial se encontra na base, então o vetor de custos básicos não possui componentes iguais a M e, assim, os cálculos estão livres do parâmetro. Suponha, então, que exista pelo menos uma variável artificial na base. É possível realizar, sem perda de generalidade, uma reordenação das variáveis básicas de modo a particionar a base em B = [B L B A ], sendo B L a matriz contendo as colunas de B correspondentes às variáveis legítimas e B A as colunas correspondentes[ às variáveis ] artificiais. Essa partição induz sobre o vetor de custos básicos a partição c t B = c t B L c t B A com c t B L = ( c B1... c Bp ), c t B A = ( M... M ) e p sendo o número de variáveis legítimas na base. Considerando a partição definida, o vetor multiplicador simplex pode ser escrito como: π t = c t BB 1 = c t B L B 1 + c t B A B 1 = c t B L B 1 + Mē t B 1 com ē t = (0,..., 0, 1,..., 1), um vetor cujas primeiras p posições são nulas e as demais são iguais a 1. De maneira semelhante à primeira iteração, define-se π t L = ct B L B 1 e π t A = ēt B 1 e, assim, o vetor multiplicador simplex é dado por: π t = π t L + Mπ t A (10) 2199

8 Substituindo esse resultado na expressão do custo reduzido, dada do Passo 3, tem-se: c Nj = c Nj (π t L + Mπ t A)a Nj = c Nj π t La Nj Mπ t Aa Nj, j = 1,..., n. (11) Para M positivo e suficientemente grande, a seguinte relação é válida sempre que π t A a N j 0: Mπ t Aa Nj >> c Nj π t La Nj, j = 1,..., n. Para πa t a N j = 0, o custo reduzido c Nj possui apenas componentes legítimas e o parâmetro M não é utilizado em seu cálculo. Assim como na primeira iteração, não há necessidade de se atribuir um valor numérico para M e realizar o cálculo do custo reduzido exatamente como descrito pela expressão (11). De fato, para se obter um índice k tal que c Nk π t La Nk Mπ t Aa Nk c Nj π t La Nj Mπ t Aa Nj, j = 1,..., n, (12) basta analisar os termos da expressão separadamente, levando-se em conta que M é positivo e suficientemente grande. Para índices k e j arbitrários, a desigualdade acima é verdadeira se, e somente se, um dos dois casos ocorre: (i) π t A a N k < π t A a N j ; ou (ii) π t A a N k = π t A a N j e (c Nk π t L a N k ) (c Nj π t L a N j ). Observe a semelhança entre as expressões (7) e (8) obtidas na primeira iteração e as expressões (10) e (11). Na realidade, as expressões da primeira iteração são um caso particular destas, em que p = 0, ou seja, nenhuma variável legítima está na base. Por outro lado, se todas as variáveis básicas são legítimas, então p = m com π A = 0. Utilizando a expressão (11), os custos reduzidos calculados têm componentes artificiais nulas e correspondem ao cálculo convencional. Logo, todos os casos se enquadram nos resultados obtidos aqui, fazendo com que a modificação das expressões dos passos 2 e 3 do método simplex seja de âmbito geral. O método apresentado no Quadro 2 corresponde ao método simplex apresentado no Quadro 1, modificado de modo a considerar M implicitamente nos cálculos, de acordo com a descrição realizada. No Passo 3 do método modificado, a expressão para a obtenção do índice k pode ser reescrita da seguinte maneira: Calcule o conjunto K = arg min{ c A N j j = 1,..., n}. Se K possui apenas um elemento então defina-o como k. Caso contrário, obtenha k = arg min{ c L N j j K}. A ordenação das variáveis básicas sugerida na obtenção dos resultados, tem o único intuito de facilitar a compreensão do texto. Em uma implementação computacional do método apresentado no Quadro 2, deve-se apenas armazenar quais variáveis são legítimas e quais são artificiais e realizar os cálculos de acordo com essa informação. Além disso, um contador de quantas variáveis artificiais estão presentes na base pode ser utilizado a fim de evitar cálculos desnecessários. Com essa nova proposta, evita-se a definição de um valor numérico para M e o método M- grande está livre de desvantagens retratadas na literatura. Para atingir esse objetivo, apenas dois passos do método simplex precisam ser modificados, sem aumentar a dificuldade de sua implementação computacional. Vale ressaltar que a proposta apresentada por Bertsimas e Tsitsiklis (1997) para o tratamento implícito de M diferencia-se da abordagem descrita aqui por não realizar o desempate das expressões utilizando os termos que não dependem de M, conforme definido em (9) e (12). Assim, a proposta dos autores se assemelha ao método de duas fases, já que ignora os coeficientes da função objetivo do problema original nas expressões de custos reduzidos contendo M. 2200

9 Entrada Problema M-grande conforme definido em (6). Inicialize B = I, N = A, c BL = 0, ē t = (1,..., 1). Passo 1 Calcule a solução básica primal: x B = B 1 b, x N = 0. Passo 2 Calcule as componentes legítima e artificial do vetor multiplicador simplex: πl t = ct B L B 1 e πa t = ēt B 1. Passo 3 Teste de otimalidade: Calcule as componentes legítima e artificial dos custos reduzidos: c L N j = c Nj πl t a N j e c A N j = πa t a N j, j = 1,..., n. Se c L N j 0 e c A N j 0 j então PARE! A solução atual é ótima para o problema M-grande! Caso contrário, obtenha k tal que k = arg min{ c L N q c A N q c A N j, q = 1,..., n e j = 1,..., n}. Passo 4 Calcule as coordenadas básicas da direção simplex: d B = B 1 a Nk. Passo 5 Teste da razão: Se d Bi 0 i então PARE! O problema é ilimitado! Caso contrário, obtenha l = arg min{ x Bi /d Bi d Bi < 0, i = 1,..., m}. Passo 6 Atualização da base: B = B \ {l} {k} e N = N \ {k} {l}. Reordene B para obter B = [B L B A ]. Redefina as matrizes B e N e o vetor ē de acordo com os índices atualizados. Inicie uma nova iteração a partir do Passo 1. Quadro 2. Método simplex modificado para o método M-grande implícito. 4. Resultados e discussões Para verificar a eficiência da abordagem proposta na Seção 3 na resolução de problemas de otimização linear reais, 41 problemas da biblioteca NETLIB ( org/lp/data) foram resolvidos pelos métodos M-grande implícito e M-grande convencional, sendo que para esse último utilizou-se M = 10 0, 10 1,..., e M = Além disso, os problemas também foram resolvidos pelo método de duas fases, descrito na Seção 2, com o intuito de se realizar uma melhor comparação dos resultados obtidos. Para a implementação desses métodos, foi utilizada uma biblioteca desenvolvida em linguagem C pelo autores, baseada no método primal simplex com características como estruturas de dados para matrizes esparsas, representação da base pela forma produto da inversa e teste da razão de passagem dupla (Harris ratio test). Na Tabela 3, são apresentados os resultados obtidos na resolução dos problemas. A segunda coluna da tabela corresponde ao valor ótimo de cada problema, obtidos pelo método M-grande implícito e verificados de acordo com Koch (2004). Nas demais colunas está o número de iterações para a resolução de cada problema, de acordo com o método e o valor de M utilizado (quando aplicável). Por questão de exposição, são apresentados os resultados de apenas três valores numéricos para M. O valor 10 6 foi escolhido por se tratar do menor valor de M com o qual o método M-grande foi capaz de obter a solução ótima correta de todos os problemas. O valor representa um M razoavelmente grande enquanto corresponde a uma valor exagerado, utilizado para verificar a introdução de erros numéricos. Todos os problemas foram resolvidos corretamente pelos métodos de duas fases, M- grande implícito e M-grande convencional com M = Para M = 10 10, o problema scorpion foi o único a apresentar erro em seu valor ótimo, que foi da ordem de Para M = , somente o problema scsd1 apresentou erro em seu valor ótimo, sendo da ordem de Para esse mesmo valor de M, o método M-grande não foi capaz de resolver os problemas scorpion e scrs8, pois excedeu o número máximo de iterações sem obter uma solução ótima. É importante ressaltar que mesmo para um valor exagerado como apenas 3 problemas foram prejudicados por erros numéricos, ao contrário do que é afirmado 2201

10 Problema Valor ótimo Duas fases M implícito M = 10 6 M = M = adlittle 2, E afiro -4, E agg2-2, e agg3 1, E bandm -1, E blend -3, E bnl1 1, E bnl2 1, E brandy 1, E e226-1, e fffff800 5, E israel -8, E lotfi -2, E maros-r7 1, E sc105-5, e sc205-5, e sc50a -6, E sc50b -7, E scagr25-1, e scagr7-2, e scfxm1 1, E scfxm2 3, E scfxm3 5, E scorpion 1, E scrs8 9, E scsd1 8, E scsd8 9, E sctap1 1, E sctap2 1, E sctap3 1, E share1b -7, E share2b -4, E ship04l 1, E ship04s 1, E ship08l 1, E ship08s 1, E ship12l 1, E ship12s 1, E stocfor1-4, e stocfor2-3, e woodw 1, E Tabela 3. Resultados obtidos na resolução dos problemas por diferentes métodos e parâmetros. recentemente na literatura (ver Introdução). Provavelmente, essas afirmações se baseiam em resultados computacionais antigos, referentes à utilização de variáveis com precisão simples. Analisando-se os dados da Tabela 3, é possível verificar que o método M-grande implícito resultou em um número de iterações menor ou igual que o método M-grande convencional em 17 problemas (41, 5%). Comparando o método de duas fases com o método M-grande implícito, em 33 problemas (80, 5%) esse resultou em um número de iterações menor ou igual ao obtido por aquele. Apenas para os problemas adlittle e sctap3 o método M-grande implícito obteve maior número de iterações que todos os demais. Para os testes com M até 10 5, o método M-grande obteve soluções infactíveis para alguns problemas. Para M = 10 6 todos os problemas foram resolvidos corretamente, podendo levar à conclusão equivocada de que essa seria uma boa escolha para M. Entretanto, um valor adequado para M depende do problema a ser resolvido e, assim, para a resolução de outros problemas, M = 10 6 pode levar a soluções infactíveis. 2202

11 Considerando os testes realizados, é possível verificar que o método M-grande implícito está realmente livre das principais desvantagens relatadas na literatura a respeito do método M-grande convencional e leva, na maioria dos casos, a menos iterações do que utilizando-se o método de duas fases. 5. Conclusões e trabalhos futuros O método M-grande implícito proposto mostrou-se superior ao método M-grande, como pôde ser observado nos resultados obtidos pela aplicação do método na resolução de 41 problemas de otimização linear da biblioteca NETLIB. Sem a necessidade de se definir um valor numérico para M, o método não obtém soluções ótimas equivocadas, não sofre a introdução de erros numéricos e, na maioria dos casos, não leva ao aumento do número de iterações. O método também se mostrou vantajoso com relação ao método de duas fases, devido ao menor número de iterações para a resolução de grande parte dos problemas. As mudanças propostas não dificultam a implementação computacional do método com relação ao método M-grande, já que são necessárias pequenas modificações no método simplex de modo a considerar o parâmetro M implicitamente na realização de comparações durante a resolução do problema. O próximo passo é estender essa abordagem para o método dual simplex, que também pode ser inicializado pelo método M-grande (Koberstein, 2007). Nesse caso, busca-se uma solução básica dual factível e, assim, o problema M-grande é definido de outra maneira. A abordagem também pode ser aplicada na resolução de problemas de otimização linear canalizados, quando incorporada ao método dual canalizado proposto por Sousa et al. (2005). Referências [1] Arenales, MN; Armentano, VA; Morabito, R; Yanasse, HH (2007) Pesquisa Operacional. Editora Campus. [2] Arsham, H (2007) A computationally stable solution algorithm for linear programs. Applied Mathematics and Computation. v.188, p [3] Bazaraa, MS; Jarvis, JJ; Sherali, HD (1990) Linear Programming and Network Flows. 2a ed. John Wiley & Sons Inc. [4] Bertsimas, D; Tsitsiklis, JN (1997) Introduction to Linear Optimization. Athena Scientific, Belmont, Massachusetts. [5] Hu, J (2007) A note on an improved initial basis for the simplex algorithm. Computers & Operations Research, v.34, p [6] Koberstein, A; Suhl, UH (2007) Progress in the dual simplex method for large scale LP problems: practical dual phase 1 algorithms. Computational Optimization and Applications, v.37(1), p [7] Koch, T (2004) The final Netlib-LP results. Operations Research Letters, v.32, p [8] Maros, I (2003) Computational techniques of the simplex method. Kluwer Academic Publishers. [9] Paparrizos, K (1993) An exterior point simplex algorithm for general linear problems. Annals of Operations Research, v.32, p

12 [10] Paparrizos, K; Samaras, N; Stephanides, G (2003) An efficient simplex type algorithm for sparse and dense linear programs. European Journal of Operational Research, v.148(2), p [11] Sousa, RS; Silva, CTL; Arenales, MN (2005) Métodos do tipo dual simplex para problemas de otimização linear canalizados. Pesquisa Operacional. v.25(3), p [12] Vieira Junior, H; Lins, MPE (2005) An improved initial basis for the simplex algorithm. Computers & Operations Research, v.32, p

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 - 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

ESTUDOS COMPUTACIONAIS SOBRE A INFLUÊNCIA DA MUDANÇA DE ESCALA NO MÉTODO SIMPLEX

ESTUDOS COMPUTACIONAIS SOBRE A INFLUÊNCIA DA MUDANÇA DE ESCALA NO MÉTODO SIMPLEX ESTUDOS COMPUTACIONAIS SOBRE A INFLUÊNCIA DA MUDANÇA DE ESCALA NO MÉTODO SIMPLEX Pedro Augusto Munari Jr Marcos Nereu Arenales Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo,

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

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

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

Teoremas de dualidade

Teoremas de dualidade Teoremas de dualidade 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

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

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

Teoria de dualidade. Marina Andretta ICMC-USP. 19 de outubro de 2016 Teoria de dualidade 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

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

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

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

O método Simplex Aplicado ao Problema de Transporte (PT).

O método Simplex Aplicado ao Problema de Transporte (PT). Prof. Geraldo Nunes Silva (Revisado por Socorro Rangel) Estas notas de aula são Baseadas no livro: Hillier, F. S. e G. J. Lieberman. Introdução à Pesquisa Operacional, Campus, a ed., 9 Agradeço a Professora

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 Perguntas?? Dada uma solução básica factível (vértice de S e, portanto, candidata à solução ótima),

Leia mais

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

Otm1 12/04/2012. Método Simplex Obtenção base inicial Degeneração (alguns comentários) Variáveis Canalizadas Otm1 12/04/2012 Método Simplex Obtenção base inicial Degeneração (alguns comentários) Variáveis Canalizadas Base inicial FASE I Como determinar uma partição básica factível inicial (A=(B, N)). Algumas

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 Bibliografia ARENALES, ARMENTANO, MORABITO e YANASSE. Pesquisa Operacional, Campus, 2007. BERTSIMAS,

Leia mais

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

Determinação de Uma Solução Básica Factível Inicial Determinação de Uma Solução Básica Factível Inicial Método das duas fases Prof. Ricardo R. Santos Determinação de Uma Solução Básica Factível Inicial Para que o simplex seja aplicado, precisamos de uma

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

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

Regras para evitar ciclagem

Regras para evitar ciclagem 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 -

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

Método Simplex Dual. Prof. Fernando Augusto Silva Marins Departamento de Produção Faculdade de Engenharia Campus de Guaratinguetá UNESP

Método Simplex Dual. Prof. Fernando Augusto Silva Marins Departamento de Produção Faculdade de Engenharia Campus de Guaratinguetá UNESP Método Simplex Dual Prof. Fernando Augusto Silva Marins Departamento de Produção Faculdade de Engenharia Campus de Guaratinguetá UNESP www.feg.unesp.br/~fmarins fmarins@feg.unesp.br Introdução Algoritmo

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

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

TÉCNICAS DE ATUALIZAÇÃO DA DECOMPOSIÇÃO LU DA BASE NO MÉTODO SIMPLEX

TÉCNICAS DE ATUALIZAÇÃO DA DECOMPOSIÇÃO LU DA BASE NO MÉTODO SIMPLEX XXXVIII SIMPÓSIO BRASILEIRO DE PESQUISA OPERIONAL a 5/09/06 Goiânia, GO TÉCNICAS DE ATUALIZAÇÃO DA DECOMPOSIÇÃO LU DA BASE NO MÉTODO SIMPLEX Daniela Renata Cantane Faculdade de Engenharia Elétrica e de

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 Linear. Conceitos básicos Álgebra Linear Introdução ao método simplex

Otimização Linear. Conceitos básicos Álgebra Linear Introdução ao método simplex Otimização Linear Conceitos básicos Álgebra Linear Introdução ao método simplex Revisão de Álgebra Linear Denomina-se posto ou Rank de uma matriz A, um número k tal que: a)existe pelo menos uma sub-matriz

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

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

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

Maristela Santos. Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo Programação Matemática Maristela Santos Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo Forma Padrão - Definição Características da forma padrão: Problema de minimização Todas

Leia mais

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

TP052-PESQUISA OPERACIONAL I Algoritmo Dual Simplex. Prof. Volmir Wilhelm Curitiba, Paraná, Brasil TP052-PESQUISA OPERACIONAL I Algoritmo Dual Simplex Prof. Volmir Wilhelm Curitiba, Paraná, Brasil Algoritmo Dual Simplex Motivação max sa Z = cx Ax = b x 0 escolhida uma base viável max sa Z = c B x B

Leia mais

Graduação em Engenharia Elétrica MÉTODOS DE OTIMIZAÇÃO ENE081. PROF. IVO CHAVES DA SILVA JUNIOR

Graduação em Engenharia Elétrica MÉTODOS DE OTIMIZAÇÃO ENE081. PROF. IVO CHAVES DA SILVA JUNIOR UNIVERSIDADE FEDERAL DE JUIZ DE FORA Graduação em Engenharia Elétrica MÉTODOS DE OTIMIZAÇÃO ENE081 PROF. IVO CHAVES DA SILVA JUNIOR E-mail: ivo.junior@ufjf.edu.br Aula Número: 07 Programação Linear Últimas

Leia mais

Aplicação do Método de Barreira Logarítmica na Resolução de um Problema de Programação Linear.

Aplicação do Método de Barreira Logarítmica na Resolução de um Problema de Programação Linear. Aplicação do Método de Barreira Logarítmica na Resolução de um Problema de Programação Linear. Rodrigo Romais (FCSGN) 1 r.romais@gmail.com Resumo: Métodos numéricos de Ponto Interior são extremamente úteis

Leia mais

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

Programação Matemática. Método Simplex Programação Matemática Método Simplex Forma Padrão - Revisão Características da forma padrão: Problema de minimização Todas as restrições são de igualdade Todas as variáveis são não-negativas Considerar

Leia mais

Aula 07: Análise de sensibilidade (2)

Aula 07: Análise de sensibilidade (2) Aula 07: Análise de sensibilidade (2) 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 Aulas anteriores: Dualidade

Leia mais

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

Degenerescência. Marina Andretta ICMC-USP. 19 de outubro de 2016 Degenerescência 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

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

Solução de problemas de PL com restrições do tipo >= e =

Solução de problemas de PL com restrições do tipo >= e = Solução de problemas de PL com restrições do tipo >= e = Seja o Problema de maximização abaixo: O problema na forma padrão: Tem-se um problema, não existe na restrição 3 uma variável de folga para entrar

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

Programação Matemática

Programação Matemática Programação Matemática Professoras: Franklina Toledo e Maristela Santos* Instituto de Ciências Matemáticas e de Computação - ICMC Universidade de São Paulo USP *Estes slides foram feitos em colaboração

Leia mais

DEPARTAMENTO DE ENGENHARIA MECÂNICA

DEPARTAMENTO DE ENGENHARIA MECÂNICA DEPARTAMENTO DE ENGENHARIA MECÂNICA Otimização: Algoritmos e Aplicações na Engenharia Mecânica ENG1786 & MEC2403 Ivan Menezes 2018-2 1 EMENTA 1. Introdução 1.1 Definições Básicas 1.2 Classificação dos

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

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

Prof. Lorí Viali, Dr. PUCRS FAMAT: Departamento de Estatística. Curso: Engenharia de Produção

Prof. Lorí Viali, Dr. PUCRS FAMAT: Departamento de Estatística. Curso: Engenharia de Produção Considere a função f(x). Para algum x a f (x) pode não existir. Suponha que se queira resolver o seguinte PPNL: Max f(x) s. a a x b Pode ser que f (x) não exista ou que seja difícil resolver a equação

Leia mais

Considere a função f(x). Para algum x a f (x) pode não existir. Suponha que. Max f(x) s. a a x b

Considere a função f(x). Para algum x a f (x) pode não existir. Suponha que. Max f(x) s. a a x b Considere a função f(x). Para algum x a f (x) pode não existir. Suponha que se queira resolver o seguinte PPNL: Max f(x) s. a a x b Pode ser que f (x) não exista ou que seja difícil resolver a equação

Leia mais

Método Preditor-Corretor Aplicado ao Fluxo de Carga Ótimo com Correções Não-lineares nas Condições de Otimalidade

Método Preditor-Corretor Aplicado ao Fluxo de Carga Ótimo com Correções Não-lineares nas Condições de Otimalidade Método Preditor-Corretor Aplicado ao Fluxo de Carga Ótimo com Correções Não-lineares nas Condições de Otimalidade Roy Wilhelm Probst Departamento Acadêmico de Matemática UTFPR Curitiba PR E-mail: rwprobst@utfpr.edu.br

Leia mais

Aula 19: Lifting e matrizes ideais

Aula 19: Lifting e matrizes ideais Aula 19: Lifting e matrizes ideais 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... Branch-and-bound Formulações

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

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

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

Leia mais

Lema de Farkas e desigualdades lineares

Lema de Farkas e desigualdades lineares Lema de Farkas e desigualdades lineares Marina Andretta ICMC-USP 30 de outubro de 2016 Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Marina Andretta (ICMC-USP)

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

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

Métodos Iterativos para a Solução da Equação de Poisson

Métodos Iterativos para a Solução da Equação de Poisson Métodos Iterativos para a Solução da Equação de Poisson Valdirene da Rosa Rocho, Dagoberto Adriano Rizzotto Justo, Programa de Pós-Graduação em Matemática Aplicada, PPGMap, UFRGS, 91509-900, Porto Alegre,

Leia mais

Cones e raios extremos

Cones e raios extremos Cones e raios extremos Marina Andretta ICMC-USP 7 de novembro 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

Heurísticas para o problema de corte com reaproveitamento das sobras de material

Heurísticas para o problema de corte com reaproveitamento das sobras de material Heurísticas para o problema de corte com reaproveitamento das sobras de material Adriana Cristina Cherri, Marcos Nereu Arenales Instituto de Ciências Matemáticas e de Computação, USP. 13560-970, São Carlos,

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

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 Teoria da Otimização Linear Transformação de problemas na forma padrão a a b i1 1 in n i a a b

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

Resolução de Sistemas Lineares. Ana Paula

Resolução de Sistemas Lineares. Ana Paula Resolução de Sistemas Lineares Sumário 1 Introdução 2 Alguns Conceitos de Álgebra Linear 3 Sistemas Lineares 4 Métodos Computacionais 5 Sistemas Triangulares 6 Revisão Introdução Introdução Introduçã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

Investigação Operacional

Investigação Operacional Métodos de Programação Linear: Big M, Fases, S Dual (Licenciatura) Tecnologias e Sistemas de Informação http://dps.uminho.pt/pessoais/zan - Escola de Engenharia Departamento de Produção e Sistemas 1 Simplex

Leia mais

Uma nova taxa de convergência para o Método do Gradiente

Uma nova taxa de convergência para o Método do Gradiente Proceeding Series of the Brazilian Society of Applied and Computational Mathematics, Vol. 2, N. 1, 2014. Trabalho apresentado no CMAC-Sul, Curitiba-PR, 2014. Uma nova taxa de convergência para o Método

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

Prática 02. Total. Pré-requisitos 2 MTM112. N o

Prática 02. Total. Pré-requisitos 2 MTM112. N o Disciplina Pesquisa Operacional I MINISTÉRIO DA Departamento DEPARTAMENTO DE COMPUTAÇÃO Carga Horária Semanal Pré-requisitos 1 CIC170 Teórica EDUCAÇÃO E CULTURA DIRETORIA DE ENSINO 1 PROGRAMA DE DISCIPLINA

Leia mais

Unidade: Modelo Simplex e Modelo Dual. Unidade I:

Unidade: Modelo Simplex e Modelo Dual. Unidade I: Unidade: Modelo Simplex e Modelo Dual Unidade I: 0 Unidade: Modelo Simplex e Modelo Dual Segundo Wikipédia (2008), em teoria da otimização matemática, o algoritmo simplex de George Dantiz é uma técnica

Leia mais

ITERAÇÕES CONTINUADAS APLICADAS AO MÉTODO DE PONTOS INTERIORES PREDITOR CORRETOR

ITERAÇÕES CONTINUADAS APLICADAS AO MÉTODO DE PONTOS INTERIORES PREDITOR CORRETOR ITERAÇÕES CONTINUADAS APLICADAS AO MÉTODO DE PONTOS INTERIORES PREDITOR CORRETOR Lilian Ferreira Berti Depto de Matemática Aplicada, IMECC, UNICAMP 13083-859, Campinas, SP E-mail: lilian@ime.unicamp.br

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

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

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

Otimização Multiobjetivo

Otimização Multiobjetivo Otimização Multiobjetivo Otimização Restrita Prof. Frederico Gadelha Guimarães Lucas S. Batista Eduardo G. Carrano Universidade Federal de Minas Gerais Programa de Pós-Graduação em Engenharia Elétrica,

Leia mais

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

PESQUISA OPERACIONAL Definições e Teoremas Básicos. Professor Volmir Wilhelm Professora Mariana Kleina PESQUISA OPERACIONAL Definições e Teoremas ásicos Professor Volmir Wilhelm Professora Mariana Kleina Conceitos Solução Viável Solução Não Viável Região Viável Solução ásica Solução ásica Viável Solução

Leia mais

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

Programação Linear. Dual Simplex: Viabilidade Dual Método Dual Simplex Programação Linear Dual Simplex: Viabilidade Dual Viabilidade Dual Considere o par de problemas primal (P) dual (D). Agora já sabemos como encontrar a solução de um desses PPL a partir da solução do outro.

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

Programação Linear. Dualidade

Programação Linear. Dualidade Programação Linear Dualidade Dualidade Já vimos em sala que para cada PPL existe um outro PL chamado dual, que consiste em modelar um problema que utiliza os mesmos dados que o original, mas alterando

Leia mais

Representação de poliedros

Representação de poliedros Representação de poliedros Marina Andretta ICMC-USP 8 de novembro de 2016 Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Marina Andretta (ICMC-USP) sme0211 -

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

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

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 Dualidade A eoria da Dualidade é um dos mais importantes tópicos da Programação Linear (PL). Estudos

Leia mais

Métodos iterativos para sistemas lineares.

Métodos iterativos para sistemas lineares. Métodos iterativos para sistemas lineares. Alan Costa de Souza 7 de Setembro de 2017 Alan Costa de Souza Métodos iterativos para sistemas lineares. 7 de Setembro de 2017 1 / 46 Introdução. A ideia central

Leia mais

Universidade Federal do Espírito Santo - UFES

Universidade Federal do Espírito Santo - UFES Universidade Federal do Espírito Santo - UFES Centro Universitário Norte do Espírito Santo - CEUNES Departamento de Matemática Aplicada - DMA Prof. Isaac P. Santos - 2018/1 Aula: Métodos Iterativos Para

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

COMBINANDO UM ALGORITMO DE AJUSTAMENTO ÓTIMO E O MÉTODO DE PONTOS INTERIORES

COMBINANDO UM ALGORITMO DE AJUSTAMENTO ÓTIMO E O MÉTODO DE PONTOS INTERIORES COMBINANDO UM ALGORITMO DE AJUSTAMENTO ÓTIMO E O MÉTODO DE PONTOS INTERIORES Carla T. L. S. Ghidini IMECC - Universidade Estadual de Campinas Rua Sérgio Buarque de Holanda, 651 - Cidade Universitária 13083-859

Leia mais

Universidade Federal de Santa Catarina Centro Tecnológico Depto de Informática e Estatística Disciplina: INE50-Cálculo Numérico Cap. - Sistemas Lineares Lista de Exercícios - Soluções 1. Resposta: a) x

Leia mais

Aula 4: Gráficos lineares

Aula 4: Gráficos lineares Aula 4: Gráficos lineares 1 Introdução Um gráfico é uma curva que mostra a relação entre duas variáveis medidas. Quando, em um fenômeno físico, duas grandezas estão relacionadas entre si o gráfico dá uma

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

Método do Lagrangiano aumentado

Método do Lagrangiano aumentado Método do Lagrangiano aumentado Marina Andretta ICMC-USP 23 de novembro de 2010 Marina Andretta (ICMC-USP) sme0212 - Otimização não-linear 23 de novembro de 2010 1 / 17 Problema com restrições gerais Vamos

Leia mais

Programação Linear. (3ª parte) Informática de Gestão Maria do Rosário Matos Bernardo 2016

Programação Linear. (3ª parte) Informática de Gestão Maria do Rosário Matos Bernardo 2016 Programação Linear (3ª parte) Informática de Gestão 61020 Maria do Rosário Matos Bernardo 2016 Conteúdos Excel Solver Instalação do Solver Resolução de problemas de programação linear Problema de minimização

Leia mais

Prof. Lorí Viali, Dr. PUCRS FAMAT: Departamento de Estatística

Prof. Lorí Viali, Dr. PUCRS FAMAT: Departamento de Estatística f : A B, significa que f é definida no conjunto A (domínio - domain) e assume valores em B (contradomínio range). R é o conjunto dos reais; R n é o conjunto dos vetores n-dimensionais reais; Os vetores

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

Métodos de Pontos Interiores com a Aplicação do Precondicionador de Elman

Métodos de Pontos Interiores com a Aplicação do Precondicionador de Elman Trabalho apresentado no XXXVIII CNMAC, Campinas - SP, 2018. Proceeding Series of the Brazilian Society of Computational and Applied Mathematics Métodos de Pontos Interiores com a Aplicação do Precondicionador

Leia mais

UNIVERSIDADE FEDERAL DO ABC

UNIVERSIDADE FEDERAL DO ABC UNIVERSIDADE FEDERAL DO ABC BC49 Cálculo Numérico - LISTA - sistemas lineares de equações Profs André Camargo, Feodor Pisnitchenko, Marijana Brtka, Rodrigo Fresneda Métodos diretos Analise os sistemas

Leia mais

3 Reformulação de IPs

3 Reformulação de IPs 3 Reformulação de IPs O desenvolvimento de métodos de resolução de problemas lineares que explorem a estrutura particular de determinado problema foi sugerido inicialmente por Ford e Fulkerson [46]. Este

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

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

Problemas de programação geométrica signomial via otimização DC

Problemas de programação geométrica signomial via otimização DC Trabalho apresentado no XXXV CNMAC, Natal-RN, 2014. Problemas de programação geométrica signomial via otimização DC Clarissa Pessoa Borges Fernandes Faculdade Maurício de Nassau João Pessoa, PB E-mail:

Leia mais

Aula 22: Formulações com número exponencial de variáveis

Aula 22: Formulações com número exponencial de variáveis Aula 22: Formulações com número exponencial de variáveis Otimização Linear e Inteira Túlio Toffolo http://www.toffolo.com.br BCC464 / PCC174 2018/2 Departamento de Computação UFOP Aula de Hoje 1 Correção

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

na Diagonal da Fatoração Controlada de Cholesky aplicado ao Método de Pontos Interiores

na Diagonal da Fatoração Controlada de Cholesky aplicado ao Método de Pontos Interiores Trabalho apresentado no CNMAC, Gramado - RS, 2016. Proceeding Series of the Brazilian Society of Computational and Applied Mathematics Modificação no Cálculo do Parâmetro de Correção de Falhas na Diagonal

Leia mais

PESQUISA OPERACIONAL

PESQUISA OPERACIONAL PESQUISA OPERACIONAL Uma breve introdução. Prof. Cleber Almeida de Oliveira Apostila para auxiliar os estudos da disciplina de Pesquisa Operacional por meio da compilação de diversas fontes. Esta apostila

Leia mais