Pesquisa Operacional: Método Simplex – Duas Fases

Slides:



Advertisements
Apresentações semelhantes
Exercícios Resolvidos
Advertisements

Prof. José Junior Barreto TEORIA DOS DETERMINANTES
Análise de Sensibilidade
Celso C. Ribeiro Caroline T. Rocha
Resolvendo Programação Linear Em um Microcomputador
Álgebra Linear e Geometria Analítica
INVESTIGAÇÃO OPERACIONAL
Cecília Rocha # 12001/2002 I NVESTIGAÇÃO O PERACIONAL 6ª Aula 6ª Aula Adaptação de problemas não standard ao Método Simplex Ir-se-ão referir os procedimentos.
Ciclos, Vectores e Gráficos Simulação da Queda de Corpos II
Introdução à Programação Linear Parte II
Prof. M.Sc. Fábio Francisco da Costa Fontes Outubro
Prof. M.Sc. Fábio Francisco da Costa Fontes Agosto
CÁLCULO DA INVERSA DA BASE
Problemas de Forma Não-padrão
SOLUÇÃO MATRICIAL E MÉTODO SIMPLEX REVISADO
Determinantes Determinante é um número real associado a uma matriz quadrada. Notação: det A ou |A|. Determinante de uma Matriz Quadrada de 1ª Ordem. Seja.
SISTEMAS DE EQUAÇÕES.
Análise de regressão linear simples: abordagem matricial
Relações Adriano Joaquim de O Cruz ©2002 NCE/UFRJ
Então, vamos lá! Qual é esse conteúdo?
Método SIMPLEX Marcone Jamilson Freitas Souza
MATRIZES Prof. Marlon.
Polinômios Prof. Marlon.
Método Simplex (Noções iniciais) Sistemas de Equações Lineares
Profa. Úrsula Lisbôa Fernandes Ribeiro 28 de agosto de 2008
Estruturas de Dados II Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
SIMPLEX ANÁLISE COMPLETA ANDERSON BESTETTI 1, EDUARDO RIGHES 1, EVERTON FONTOURA 2, GUILHERME LAZZARI 3, RODRIGO SCHRAMM 3, ROGERIO MARTINS 4 1 {anderson.bestetti,
MATRIZES É uma tabela disposta em “m” linhas e “n” colunas.
Prof. Ricardo Villarroel Dávalos, Dr. Eng.
MATRIZES - 2 OPERAÇÕES.
Revisão do conceito de matrizes
Revisão do conceito de vetores
Apresentação da disciplina
Progressão Aritmética (PA) Professor : Eduardo Jatobá
Teoria da Produção e do Custo
TENSÕES E CORRENTES EM CIRCUITOS TRIFÁSICOS BALANCEADOS Sistemas de potência são alimentados por geradores trifásicos. De maneira ideal, os geradores suprem.
Campus de Caraguatatuba
Calculada a solução óptima
Campus de Mal. Cdo. Rondon - PR. SISTEMAS ESCALONADOS – FORMA ESCADA.
Programação Linear Universidade Federal de Itajubá – UNIFEI
SISTEMAS LINEARES.
Solução Básica Factível e Método Simplex Introdução ao Método Simplex Fase I e Fase II.
PROBLEMAS DE ALOCAÇÃO DE RECURSOS: PROGRAMAÇÃO LINEAR
Pesquisa Operacional Programação Linear Solução Gráfica.
Pesquisa Operacional Profa. Leila Jane Brum Lage Sena Guimarães
Pesquisa Operacional Sistemas Lineares
Revisão do conceito de matrizes
Revisão do conceito de matrizes
Determinantes Conceito Representação Propriedades
Progressão Geométrica Matrizes Questão nº01  Na P.G., a posição do termo é...
Aula 3 - Método gráfico Programação Linear
Instituto de Aplicação Fernando Rodrigues da Silveira (CAp/UERJ)
Campus de Caraguatatuba Aula 12: Sistemas de Equações Lineares (2)
Computação Gráfica Aula 3 Transformações Geométricas
PROGRAMAÇÃO MATEMÁTICA MÉTODO SIMPLEX
Campus de Caraguatatuba
POTENCIAÇÃO E FUNÇÃO EXPONENCIAL
Programação Linear Universidade Federal de Itajubá – UNIFEI
Método Simplex Tópicos em Otimização
Otimização Numérica de Processos
Capitulo 5: Simplex Voltando ao exemplo da confecção da D. Maria, e modificando um pouco os valores apenas para facilitar nossos cálculos e o entendimento,
Capitulo 5: Simplex Voltando ao exemplo da confecção da D. Maria, e modificando um pouco os valores apenas para facilitar nossos cálculos e o entendimento,
Capitulo 8: Dualidade O que é um modelo Dual?
Problemas de Forma Não-Padrão
FEAMIG – Faculdade de Engenharia de Minas Gerais
Pesquisa Operacional Profa. Leila Jane Brum Lage Sena Guimarães
Pesquisa Operacional:
Professor: Cezar Augusto Pereira dos Santos
PROFESSOR: CÉZAR AUGUSTO PEREIRA DOS SANTOS 1.
O Método Simplex Prof. Gustavo Peixoto Silva Departamento de Computação Univ. Federal de Ouro Preto.
Transcrição da apresentação:

Pesquisa Operacional: Método Simplex – Duas Fases 1

Exemplo 1: Minimização da função objetivo Minimizar Z = 3x1 + 2x2 Restrições: 2x1 + x2 ≥ 10 x1 + 5x2 ≥ 15 x1 ≥ 0 x2 ≥ 0 Pode-se transformar em um problema de maximização da seguinte forma:

Passo 1: Transformar para maximização e introduzir as variáveis de folga. Multiplicar a função objetivo por (-1) para utilizar o método Simplex como foi efetuado anteriormente na maximização. Minimizar Z = 3x1 + 2x2 Restrições: 2x1 + x2 ≥ 10 x1 + 5x2 ≥ 15 x1 ≥ 0 x2 ≥ 0 Max(-z) = Min(z) Max (-z) = -3x1 - 2x2 Restrições: 2x1 + x2 ≥ 10 x1 + 5x2 ≥ 15 x1 ≥ 0 e x2 ≥ 0

Passo 1: inserir as variáveis de folga. Max(-z) = Min(z) Max (-z) = -3x1 - 2x2 Restrições: 2x1 + x2 ≥ 10 x1 + 5x2 ≥ 15 x1 ≥ 0 e x2 ≥ 0 2x1 + x2 + f1 = 10 x1 + 5x2 + f2 = 15 2x1 + x2 + 1f1 + 0f2 = 10 x1 + 5x2 + 0f1 + 1f2 = 15 Função objetivo: -z + 3x1 + 2x2 + 0f1 + 0f2 = 0

Passo 2: Montagem do quadro de cálculos. Função objetivo: -z + 3x1 + 2x2 + 0f1 + 0f2 = 0 2x1 + x2 + 1f1 + 0f2 = 10 x1 + 5x2 + 0f1 + 1f2 = 15 BASE x1 x2 f1 f2 b 2 1 10 5 15 -z 3

Passo 3: Escolha da solução básica viável inicial. Variáveis não-básicas: Variáveis básicas: Função objetivo:

Passo 4: Variável que deve entrar na base. 1ª Iteração Passo 4: Variável que deve entrar na base. Qual é o produto que mais contribui para o lucro? (maior valor positivo (-z) = x1 BASE x1 x2 f1 f2 b 2 1 10 5 15 -z 3 Maior valor positivo X1

Passo 5: Variável que deve sair da base. Divisões: 1ª linha: 2ª linha: O menor quociente ocorreu na 1ª linha. Logo, a variável que deve sair é : f1 BASE x1 x2 f1 f2 b 2 1 10 5 15 -z 3 Pivô (cruzamento) = 2

Passo 6: Transformação da matriz. Deverão ser realizadas as operações com as linhas da matriz, de forma que a coluna de X1 venha a se tornar um vetor identidade, com o elemento 1 na 1ª linha. BASE x1 x2 f1 f2 b 1 -z Entra X1 no lugar de f1

Passo 6: Transformação da matriz. BASE x1 x2 f1 f2 b 1/2 5 -9/2 -1 -10 -z -3/2 -15 L1 ¬ L1 / 2 L2 ¬ L2 – L1 L3 ¬ L3 - 3L3 BASE x1 x2 f1 f2 b 2 1 10 5 15 -z 3 Matriz de cálculo anterior

Nova solução: Variáveis não-básicas: Variáveis básicas: Função objetivo:

Passo 4: Variável que deve entrar na base. 2ª Iteração Passo 4: Variável que deve entrar na base. Qual é o produto que mais contribui para o lucro? (maior valor positivo (-z) = x2) BASE x1 x2 f1 f2 b 1 1/2 5 -9/2 -1 -10 -z -3/2 -15 Maior valor positivo X2

Passo 5: Variável que deve sair da base. Divisões: 1ª linha: 2ª linha: O menor quociente ocorreu na 2ª linha. Logo, a variável que deve sair é : f2 BASE x1 x2 f1 f2 b 1 1/2 5 -9/2 -1 -10 -z -3/2 -15 Pivô (cruzamento) = -9/2

Passo 6: Transformação da matriz. Deverão ser realizadas as operações com as linhas da matriz, de forma que a coluna de X2 venha a se tornar um vetor identidade, com o elemento 1 na 2ª linha. BASE x1 x2 f1 f2 b 1 -z Entra X2 no lugar de f2

Passo 6: Transformação da matriz. BASE x1 x2 f1 f2 b 5/9 -1/9 3,88 2/9 2,22 -z -1,44 -0,11 -16,11 L1 ¬ L1 - L2/2 L2 ¬– 2L2/9 L3 ¬ L3 – L2/2 BASE x1 x2 f1 f2 b 1 1/2 5 -9/2 -1 -10 -z -3/2 -15 Matriz de cálculo anterior

Assim, obtemos a solução ótima para: x1 = 3,89 f1 = 0 x2 = 2,22 f2 = 0 -z = -16,11 z = 16,11 BASE x1 x2 f1 f2 b 1 5/9 -1/9 3,88 2/9 2,22 -z -1,44 -0,11 -16,11

Quando maximizamos ou minimizamos uma função objetivo temos: Maximizar L = x1 + 2x2 Restrições: 3x1 + 4x2 ≤ 24 5x1 + 2x2 ≤ 20 x1 ≥ 0 x2 ≥ 0 Minimizar Z = 3x1 + 2x2 Restrições: 2x1 + x2 ≥ 10 x1 + 5x2 ≥ 15 x1 ≥ 0 x2 ≥ 0 ≤ delimita o maior valor possível para as restrições ≥ delimita o menor valor possível para as restrições

O método Simples Duas Fases resolve problemas das restrições conforme demonstrado abaixo: Maximizar L = x1 + 2x2 Restrições: 3x1 + 4x2 ≥ 24 5x1 + 2x2 = 20 x1 ≥ 0 x2 ≥ 0 Minimizar Z = 3x1 + 2x2 Restrições: 2x1 + x2 = 10 x1 + 5x2 ≤ 15 x1 ≥ 0 x2 ≥ 0 Solução não existe Solução não existe

Método Simplex – Duas Fases O Método Simplex utiliza uma solução inicial viável para começar o processo iterativo, trabalhando sempre dentro da região viável. Nos casos apresentados de maximização até o presente momento, a solução para xi = 0, para i = 1, ..., n era uma solução viável, já que todas as restrições apresentadas foram do tipo (≤). Quando as restrições são do tipo (=) ou (≥), esta solução não existe. 19

Seja o exemplo abaixo: minimizar z = 10 x1 + 4 x2 + 5 x3 sujeito a: 8 x1 + 3 x2 + 4 x3 ³ 10 4 x1 + 3 x2 £ 8 x1, x2, x3 ³ 0 Como temos uma restrição do tipo (³), a variável de folga deve ter coeficiente negativo, tendo o significado de uma variável de excesso.

onde f1 é uma variável de excesso e f2 é uma variável de folga. O problema transformado é: minimizar z = 10 x1 + 4 x2 + 5 x3 sujeito a: 8 x1 + 3 x2 + 4 x3 - f1 = 10 4 x1 + 3 x2 + f2 = 8 x1, x2, x3, f1, f2 ³ 0 onde f1 é uma variável de excesso e f2 é uma variável de folga.

Pelo processo de solução anterior, a variável de excesso (f1) passaria a ter valor negativo na solução inicial (-10), o que não é permitido. Assim, a solução x1 = x2 = x3 = 0 é inviável. É necessário então encontrar uma solução viável para que o método Simplex possa ser iniciado.

A forma de se resolver isto é inventando novas variáveis, também chamadas de variáveis artificiais, e representadas por zi. Uma variável artificial será colocada em cada restrição do modelo, ou seja: 8 x1 + 3 x2 + 4 x3 - f1 + z1 = 10 4 x1 + 3 x2 + f2 + z2 = 8 x1, x2, x3, f1, f2, z1, z2 ³ 0 Percebe-se que o problema com as restrições acima não é o mesmo problema, a não ser que todas as variáveis zi sejam iguais a zero.

Desta forma, podemos resolver o problema em duas fases: Na primeira fase, substituímos a função objetivo original por uma função objetivo auxiliar da seguinte forma: Soma-se as variáveis das duas restrições: 8 x1 + 3 x2 + 4 x3 - f1 + z1 = 10 4 x1 + 3 x2 + 0 x3 + f2 + z2 = 8 12 x1 + 6 x2 + 4 x3 - f1 + f2 + z1 + z2 = 18 Representa-se as restrições em função de z1 e z2 12 x1 + 6 x2 + 4 x3 - f1 + f2 - 18 = - z1 - z2 portanto, a função objetivo auxiliar será: zaux = - z1 - z2 = 12 x1 + 6 x2 + 4 x3 - f1 + f2 - 18

Nesse momento, aplicamos o método Simplex de forma a maximizar a função objetivo auxiliar, com as restrições contendo as variáveis auxiliares. A função objetivo auxiliar será maximizada quando todas as variáveis zi forem iguais a zero, já que não podem conter valores negativos. A primeira fase do problema então consiste na maximização da função objetivo auxiliar, que fornecerá uma solução viável para o problema original. A segunda fase consiste em resolver o problema original tomando como solução inicial os valores obtidos pela primeira fase para as variáveis xi e fi.

zaux = - z1 - z2 = 12 x1 + 6 x2 + 4 x3 - f1 + f2 - 18 Resolvendo o problema: minimizar z = 10 x1 + 4 x2 + 5 x3 sujeito a: 8 x1 + 3 x2 + 4 x3 - f1 + z1 = 10 4 x1 + 3 x2 + f2 + z2 = 8 x1, x2, x3, f1, f2 ³ 0 Função objetivo: z’ = -z = 10 x1 + 4 x2 + 5 x3 - 0f1 + 0f2+ 0z1 + 0z2 Função objetivo auxiliar: zaux = - z1 - z2 = 12 x1 + 6 x2 + 4 x3 - f1 + f2 - 18

Para resolver o problema, monta-se o quadro de forma semelhante à sistemática anterior, colocando-se a função objetivo artificial na última linha. Base x1 x2 x3 f1 f2 z1 z2 b 8 3 4 -1 1 10 z' = -z 5 zaux -12 -6 -4 -18 Como o problema é de minimização e vamos maximizar, é necessário multiplicar a função objetivo auxiliar por (-1). Aplica-se Simplex usando como função objetivo a última linha.

Quando a solução ótima for atingida, dois casos podem ocorrer: zaux = 0: neste caso foi obtida uma solução básica do problema original e o processo de solução deve continuar, desprezando-se as variáveis artificiais e os elementos da última linha. É o início da segunda fase do processo. zaux ¹ 0: neste caso o problema original não tem solução viável, o que significa que as restrições devem ser inconsistentes.

Fase 1 - Primeira iteração Variável a entrar na base: x1 (coluna com maior valor negativo na última linha) Variável a sair da base: z1 (o quociente 10/8 é o menor quociente entre a última coluna e a coluna da variável x1, que vai entrar na base) Pivô = 8 Base x1 x2 x3 f1 f2 z1 z2 b 8 3 4 -1 1 10 z' = -z 5 zaux -12 -6 -4 -18 x1 1 Montagem da matriz identidade

Base x1 x2 x3 f1 f2 z1 z2 b 1 3/8 1/2 -1/8 1/8 5/4 3/6 -2 -1/2 3 z' = -z 1/4 -5/4 -12,5 zaux -3/6 2 -1 3/2 -3 L1 ¬ L1 / 8 L2 ¬ L2 - 4 L1 L3 ¬ L3 - 10 L1 L4 ¬ L4 + 12 L1 Base x1 x2 x3 f1 f2 z1 z2 b 8 3 4 -1 1 10 z' = -z 5 zaux -12 -6 -4 -18 Matriz de cálculo anterior

Fase 1 – Segunda iteração Variável a entrar na base: x2 (coluna com maior valor negativo na última linha) Variável a sair da base: z2 (o quociente 3/(3/2) é o menor quociente entre a última coluna e a coluna da variável x2, que vai entrar na base) Pivô = 3/6 Base x1 x2 x3 f1 f2 z1 z2 b 1 3/8 1/2 -1/8 1/8 5/4 3/6 -2 -1/2 3 z' = -z 1/4 -5/4 -12,5 zaux -3/6 2 -1 3/2 -3 X2 1 Montagem da matriz identidade

Base x1 x2 x3 f1 f2 z1 z2 b 1 -1/4 1/4 1/2 -4/3 1/3 2/3 -1/3 2 z' = -z 7/6 -1/6 -7/6 1/6 -13 zaux L1 ¬ L1 - 3 L2 / 8 L2 ¬ 2 L2 / 3 L3 ¬ L3 - L2 / 4 L4 ¬ L4 + 3 L2 / 2 Base x1 x2 x3 f1 f2 z1 z2 b 1 3/8 1/2 -1/8 1/8 5/4 3/6 -2 -1/2 3 z' = -z 1/4 -5/4 -12,5 zaux -3/6 2 -1 3/2 -3 Matriz de cálculo anterior Como na última linha o valor da função objetivo artificial é zero, a primeira fase terminou e a solução encontrada é a solução básica inicial para a segunda fase.

Removendo a última linha e as colunas referentes às variáveis artificiais, o quadro se torna: Base x1 x2 x3 f1 f2 b 1 -1/4 1/2 -4/3 1/3 2/3 2 z' = -z 7/6 -1/6 -13 Matriz para 2ª fase Base x1 x2 x3 f1 f2 z1 z2 b 1 -1/4 1/4 1/2 -4/3 1/3 2/3 -1/3 2 z' = -z 7/6 -1/6 -7/6 1/6 -13 zaux Retirar zaux, z1 e z2

Fase 2 - Primeira iteração Variável a entrar na base: f2 (coluna com maior valor negativo na última linha) Variável a sair da base: x2 (o quociente 2/(2/3) é o menor quociente entre a última coluna e a coluna da variável f2, que vai entrar na base) Pivô = 2/3 Base x1 x2 x3 f1 f2 b 1 -1/4 1/2 -4/3 1/3 2/3 2 z' = -z 7/6 -1/6 -13 f2 1 Montagem da matriz identidade

L1 ¬ L1 + L2 / 4 L2 ¬ 3 L2 / 2 L3 ¬ L3 + L2 / 6 Base x1 x2 x3 f1 f2 b 3/8 1/2 -1/8 5/4 3/6 -2 3 z' = -z 1/4 -12,5 L1 ¬ L1 + L2 / 4 L2 ¬ 3 L2 / 2 L3 ¬ L3 + L2 / 6 Base x1 x2 x3 f1 f2 b 1 -1/4 1/2 -4/3 1/3 2/3 2 z' = -z 7/6 -1/6 -13 Matriz de cálculo anterior Todos os valores da última linha (função z-transformada) são positivos ou nulos, concluímos que a solução encontrada é ótima.

Resposta ao problema: minimizar z = 10 x1 + 4 x2 + 5 x3 sujeito a: 8 x1 + 3 x2 + 4 x3 ≥ 10 4 x1 + 3 x2 ≤ 8 x1, x2, x3, f1, f2 ³ 0 Base x1 x2 x3 f1 f2 b 1 3/8 1/2 -1/8 5/4 3/6 -2 3 z' = -z 1/4 -12,5 x1 = 1,25 x2 = 0 z = -z' = 12,5

Formulação de um problema utilizando modelos matemáticos. Memória de aula Formulação de um problema utilizando modelos matemáticos. Funcionamento do método simplex. Maximizar uma função usando o método simplex. Minimizar uma função usando o método simplex. Funcionamento do método simplex duas Fases. Resolver lista de exercícios (lista 4) disponível no site. 37

Bibliografia indicada LISBOA, Erico Fagundes Anicet. Rio de Janeiro, 2002. versão digital disponível na Internet (http://www.ericolisboa.eng.br). ANDRADE, Eduardo Leopoldino de. Introdução à Pesquisa Operacional: métodos e modelos para a análise de decisão. Rio de Janeiro: Editora LTC, 2005. LACHTERMACHER, Gerson. Pesquisa Operacional na Tomada de Decisões: modelagem em Excel. Rio de Janeiro: Editora Elsevier, 2004. 38