Buscar

Estudo1 - Simplex Padrão - JhonathandeAngelo

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 9 páginas

Prévia do material em texto

Universidade Federal de Santa Catarina Campus Araranguá 
 Disciplina: Pesquisa Operacional – DEC7542 
 
Professor: Vitor Antunes 
Aluno: Jhonathan F. Mataruco de Angelo - 13103225 
 
 
Estudo 1 – Simplex Padrão 
 
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 de Programação Linear, na forma padrão, mas com 
as seguintes características para o sistema linear de equações: 
Todas as variáveis são não-negativas; Todos os bⅈ são não-negativos; Todas as 
equações iniciais do sistema são do tipo “≤ “. Assim, na forma padrão, só se 
encontra variáveis de folga. 
2.Descrição teórica e matemática do método 
Para ser iniciado, o método simplex necessita conhecer uma solução básica 
viável (solução inicial). Se a solução atual não é ótima, então o simplex muda do 
ponto extremo atual ao ponto extremo adjacente. Este processo continua até que 
a solução seja ótima. 
-Achar uma solução viável básica inicial. 
-Verificar se a solução atual é ótima. Se for, pare. 
-Determinar a variável não-básica que deve entrar na base. 
-Determinar a variável básica que deve sair da base. 
-Achar a nova solução viável básica, e voltar ao Passo 1 
Teorema: Se a função objetivo possui um máximo (mínimo) finito, então pelo 
menos uma solução ótima é um ponto extremo do conjunto das soluções 
(viáveis). 
 
Variáveis básicas e não básicas: Considerando-se o sistema Ax=b, definido 
em (introdução) e B ∈ ℜ mxm uma submatriz base de A, então, as variáveis 
associadas à submatriz B ∈ ℜ mxm são denominadas variáveis básicas. 
Notação: variáveis básicas: xB. Definida a submatriz base B restam em A (n - m) 
colunas que se chamara de submatriz não base N. As variáveis associadas a 
esta submatriz N são denominadas variáveis não básicas. Notação: variáveis 
não básicas: xN. 
Variáveis de folga: Nos problemas onde as restrições são do tipo “≤” (menor ou 
igual) é sempre possível obtermos uma submatriz (identidade) com o auxílio das 
variáveis de folga, e assim a solução inicial é óbvia. Porém, quando não temos 
uma solução inicial óbvia, ou seja, não conseguimos uma submatriz base 
(identidade) necessitamos de um procedimento para desenvolvê-la. Isto ocorre 
quando o problema de Programação Linear tiver restrições de “= “(igualdade) e 
ou restrições do tipo “≥” (maior ou igual). 
Tipo de Otimização. 
Como mencionado, o objetivo do método é otimizar o valor da função objetivo. 
No entanto, duas opções são apresentadas: obter o maior valor ótimo 
(maximizar) ou obter o menor valor ótimo (minimizar). 
Além disto, existem diferenças no algoritmo entre o objetivo de maximização e 
de minimização quanto ao critério de parada para finalizar as iterações e as 
condições de entrada e saída da base. Assim: 
• Objetivo de maximização 
Critério de parada: quando na linha Z não aparece nenhum valor negativo. 
Condição de entrada na base: o menor valor negativo na linha Z (ou o de maior 
valor absoluto entre os negativos) indica a variável Pj que entra na base. 
Condição de saída da base: depois de obter a variável de entrada, determina-se 
a variável de saída por meio do menor quociente P0/Pj dos valores estritamente 
positivos. 
• Objetivo de minimização 
Critério de parada: quando na linha Z não aparece nenhum valor positivo. 
Condição de entrada na base: o maior valor positivo na linha Z indica a variável 
Pj que entra na base. 
Condição de saída da base: depois de obter a variável de entrada, determina-se 
a variável de saída por meio do menor quociente P0/Pj dos valores estritamente 
negativos. 
No entanto, é possível normalizar o objetivo do problema, a fim de aplicar sempre 
os mesmos critérios sobre o critério de parada do algoritmo e as condições de 
entrada e saída nas variáveis da base. Assim, se o objetivo é minimizar a solução 
pode-se mudar o problema para outro equivalente de maximização, apenas 
multiplicando a função objetivo por "-1". Ou seja, o problema de minimizar Z é 
equivalente ao problema de maximizar (-1) ·Z. Uma vez obtida a solução, será 
preciso multiplicar por (-1). 
3.Vantagens e desvantagens do método 
Vantagens: Não será preciso se preocupar com novos critérios de parada, 
condição de entrada e de saída da base, já que são mantidos. 
Desvantagens: No caso em que a função tenha todos os coeficientes de suas 
variáveis básicas positivas e, adicionalmente, as restrições sejam do tipo de 
desigualdade "≤", ao fazer a mudança, tais coeficientes ficam negativos 
cumprindo assim a condição de parada na primeira iteração (na linha de valor da 
função objetivo todos os valores são positivos ou zero). Neste caso, obtém-se 
por padrão um valor ótimo para a função igual a 0. 
Solução: Não existe este problema, dado que para que a solução seja superior 
a 0 é necessário que alguma restrição tenha imposto a condição "≥" (que seria 
um modelo para o método das Duas Fases). No caso mencionado, a solução 
real deve ser zero. 
4.Formato padrão de PLs 
Outra condição do modelo padrão do problema é que todas as restrições sejam 
equações de igualdade (também chamada de restrições de igualdade), por isso 
é necessário converter as restrições de desigualdade ou inequações em tais 
identidades matemáticas. 
A condição de não negatividade das variáveis (x1,..., xn ≥ 0) é a única exceção 
e se mantém inalterada. 
• Restrição do tipo "≤" 
Para normalizar uma restrição com uma desigualdade do tipo "≤", adiciona-se 
uma nova variável, chamada variável de folga xs (com condição de não 
negatividade: xs ≥ 0). Esta nova variável aparece com coeficiente zero na função 
objetivo e, somando na equação correspondente (que agora é uma identidade 
matemática ou equação de igualdade). 
a11·x1 + a12·x2 ≤ b1 a11·x1 + a12·x2 + 1·xs = b1 
• Restrição do tipo "≥" 
No caso de uma desigualdade do tipo "≥", deve-se acrescentar também uma 
nova variável chamada de variável de excesso xs (com condição de não 
negatividade: xs ≥ 0). Esta nova variável aparece com coeficiente zero na função 
objetivo e, subtraindo na equação correspondente. 
Surge agora um problema com a condição de não negatividade com esta nova 
variável do problema. As inequações contendo uma desigualdade do tipo "≥" 
ficariam: 
a11·x1 + a12·x2 ≥ b1 a11·x1 + a12·x2 - 1·xs = b1 
Ao realizar a primeira iteração do método Simplex, as variáveis básicas não 
estarão na base e assumirão o valor zero. Neste caso, a nova variável xs, depois 
de zerar x1 e x2, assumirá o valor -b1 além de não cumprir a condição de não 
negatividade. É necessário adicionar outra variável xr, chamada de variável 
artificial, que também aparecerá com coeficiente zero na função objetivo e 
somando na restrição correspondente. Ficando da seguinte maneira: 
a11·x1 + a12·x2 ≥ b1 a11·x1 + a12·x2 - 1·xs + 1·xr = b1 
• Restrição do tipo "=" 
Ao contrário do que se poderia pensar, para restrições do tipo "=" (embora já 
sejam identidades) também é necessário adicionar variáveis artificiais xr. Como 
no caso anterior, seu coeficiente será zero na função objetivo e aparecerá 
somando na restrição correspondente. 
a11·x1 + a12·x2 = b1 a11·x1 + a12·x2 + 1·xr = b1 
No último caso, é evidente que as variáveis artificiais representam uma violação 
das leis da álgebra, de modo que será necessário garantir que as variáveis 
artificiais tenham um valor 0 na solução final. Esta é a responsabilidade 
do método das Duas Fases e por isso, sempre que apareça este tipo de variável, 
se deverá realizar este procedimento. 
A tabela a seguir resume a desigualdade, o tipo de variável que aparece na 
equação padrão, assim como seu sinal: 
 
5.Existencia de variações de métodos e soluções 
Solução ótima: quando o critério de parada é satisfeito e não existam variáveis 
artificiais na base com valor positivo (os valores são indicados na coluna P0), a 
otimização foi alcançada.O valor Z0 atual é a solução ótima do problema, 
cumprindo para as variáveis que estão na base. Caso trate-se de um problema 
de minimização, o valor ótimo obtido deverá ser multiplicado por "-1". 
Soluções infinitas: satisfeito o critério de parada, se alguma variável de decisão 
não-básica tem um valor 0 na fila Z, significa que existe outra solução que 
fornece o mesmo valor ótimo para a função objetivo. Neste caso, o problema 
admite infinitas soluções, todas as quais abrangidas dentro do segmento (ou 
parte do plano, região de espaço, etc., conforme o número de variáveis do 
problema) definido por A·X1 + B·X2 = Z0. Através de uma nova iteração e 
fazendo com que a variável de decisão que tenha 0 na linha Z entre na base, é 
obtida uma solução diferente para o mesmo valor ótimo. 
Solução ilimitada (unbounded): se toda coluna da variável que entra na base 
tem todos os seus elementos negativos ou nulos, trata-se de um problema não-
limitado, ou seja, que tem solução ilimitada. Não há valor ótimo concreto para a 
função objetivo, mas à medida que os valores das variáveis são aumentados, o 
valor Z também aumenta sem violar qualquer restrição. 
Não existe solução: quando nenhum ponto satisfaz às restrições do problema, 
ocorre a inviabilidade, não existindo nenhuma solução possível para ele. Neste 
caso, uma vez terminadas todas as iterações do algoritmo, existem na base 
variáveis artificiais em que o valor é superior a zero. 
Empate de variável de entrada: quando ocorre um empate na escolha da 
variável entrante, pode-se optar por qualquer uma delas sem que isto afete a 
solução final. Por outro lado, se ela influencia o número de iterações necessárias 
para obter a solução. É aconselhável optar pelas variáveis básicas, já que elas 
são as que farão parte da solução ótima. 
Empate de variável de saída: novamente é possível optar por qualquer uma 
delas. No entanto, a fim de não ampliar o problema e evitar que a entrada fique 
em um ciclo infinito (caso degenerado), discrimina-se a favor das variáveis de 
decisão fazendo que permaneçam na base. No caso de ser a primeira fase do 
método das Duas Fases, se optará por retirar da base as variáveis artificiais. 
Curiosidade na fase 1: ao finalizar a fase 1, caso o problema original tenha 
solução, todas as variáveis artificiais na linha indicadora devem ter o valor "1". 
O elemento pivô pode ser nulo?: Não, o elemento pivô sempre será 
estritamente positivo já que apenas realizam-se os quocientes entre os valores 
não-negativos e maiores que zero (em um problema de maximização). 
6.Exemplo de resolução 
Empresa que fabrica apenas dois Produtos: 
Ao modelar um problema de otimização, deve-se ficar atento as seguintes 
questões de extrema importância nesse processo: Quais as variáveis de 
decisão, qual o objetivo e quais são as restrições. Sendo assim, devem-se: 
• Explicitar as decisões a serem tomadas e representá-las através de variáveis 
de decisão 
(x1, x2...), o qual, se o problema é de programação de produção as variáveis de 
decisão são as quantidades a produzir no período. 
• Identificar o objetivo da tomada de decisão, que geralmente será a 
maximização de lucro ou receita, minimização de custos, perda, etc. A função 
objetivo calculará o valor do objetivo (lucros, receita, perda, etc), em função das 
variáveis. 
• Restringir as variáveis através de equações ou inequações matemáticas 
lineares. 
 
Descrição do Problema (Quando as Restrições são todas ≤): 
Uma empresa pode-se fabricar dois produtos 1 e produto 2. Na fabricação do 
produto 1 a empresa gasta nove horas-homem e três horas-máquina, onde a 
tecnologia utilizada é intensiva em mão-de-obra. Na fabricação do produto 2 a 
empresa gasta uma hora-homem e uma hora-máquina, onde a tecnologia é 
intensiva em capital. Sendo x1 e x2 as quantidades fabricadas dos produtos 1 e 
2 e sabendo-se que a empresa dispõe de 18 horas-homem e 12 horas-máquina 
e ainda que os lucros dos produtos são $4 e $1 respectivamente, quanto deve 
fabricar cada produto para obter o maior lucro possível? 
 
Modelagem do Problema 
 Admitindo que não há economia de escala, mas quantidades fabricadas quanto 
ao lucro, a função lucro a ser maximizada é: 
L = 4 x1 + x2 
por uma escolha de x1 e x2. 
Se o problema parasse aqui o lucro seria ilimitado. Porém, existem recursos 
limitados. 
O que limita as quantidades fabricadas aqui são as horas-homem e horas-
máquina disponíveis. Assim, as quantidades fabricadas e as horas utilizadas de 
cada recursos não podem ultrapassar as quantidades de recursos disponíveis, 
ou seja: 
 H-H 9x1 + x2 ≤ 18 e 
 H-M 3x1 + x2 ≤ 12 
 Assim, o lucro só poderá crescer até esses limites. 
 Temos então o seguinte modelo matemático: 
 Max L = 4 x1 + x2 
 sujeito a: 
 horas-homem 9x1 + x2 ≤ 18 
 horas-máquina 3 x1 + x2 ≤ 12 
 x1 ≥ 0 e x2 ≥ 0 
 
Consideremos então o modelo: 
Max. L = 4x1 + x2 
 
 9x1 + x2 + xf1 =18 
Sujeito a: 3x1 + x2 + xf2 =12 
 x1 ≥ 0, x2 ≥ 0, xf1 ≥ 0, xf2 ≥ 0 
 
Cálculo da Nova Solução Básica: 
Variável que entra na base: entra na base a variável com coeficiente negativo de 
maior valor absoluto. A ideia é melhorar rapidamente o valor de L. Examinando 
a função objetivo do exemplo: 
 
L - 4x1 - x2 = 0 ou L = 4x1 + x2 
Entra a variável x1, pois cada unidade a mais em x1, aumenta L em 4 unidades. 
 
Variável que sai: sai a variável que primeiro se anula com a entrada da variável 
escolhida no item anterior, no caso x1, que entra com maior valor possível. Ela 
pode ser descoberta dividindo-se os termos da direta das restrições pelos 
coeficientes positivos da variável que entra. O menor valor indica que a variável 
básica dessa linha é a que primeiro se anula e sairá da base. 
9x1 + x2 + xf1 = 18 18 ÷9 = 2 → sai 
3x1 + x2 + xf2 = 12 12 ÷3 = 4 
 ↑ 
Entra 
 
Elemento pivô 
A coluna da variável que entra e a linha da variável que sai identificam um 
elemento chamado pivô. A linha da variável que sai é também linha pivô. No 
caso, a primeira linha é a pivô e o coeficiente 4 de x2 é o elemento pivô. 
 
Calculando a nova solução 
 D1. Vamos organizar a função objetivo e restrições numa tabela com colunas 
formadas pelos coeficientes de cada variável e outra dos termos independentes. 
L X1 X2 Xf1 Xf2 b 
1 -4 -1 0 0 0 
0 9 1 1 0 18 
0 3 1 0 1 12 
 ↑ 
 Entra 
 
D2. Dividimos a linha pivô pelo valor do elemento pivô, obtendo uma nova linha 
com pivô unitário. 
 
Linha pivô: 0 9 1 1 0 18 
Dividindo por 4: 0 1 0,111 0,111 0 2 →nova linha pivô. 
 
D3. Vamos reescrever cada uma das outras linhas da seguinte maneira: 1º 
Multiplicar os elementos da nova linha pivô pelo coeficiente da variável que entra 
da outra linha, com sinal trocado. 2º Somar termo a termo com os elementos da 
outra linha. Sendo assim, o coeficiente da variável que entra (x1) na primeira 
linha é -4. Então: 
 
nova linha pivô: 0 1 0.111 0.111 0 2 
x4: 0 4 0.444 0.444 0 8 
+ primeira linha: 0 -4 -1 0 0 0 
 
Soma = nova primeira linha: 1 0 -0.555 0.444 0 8 
 
O coeficiente da variável que entra (x1) na terceira linha é 3. Então: 
 
nova linha pivô: 0 1 0.111 0.111 0 2 
x (-3): 0 -3 -0.333 -0.333 0 6 
+ terceira linha: 0 3 1 0 1 12 
 
Soma = nova terceira linha: 0 0 0.666 -0.333 1 6 
Reescrevemosa tabela com os resultados obtidos teremos: 
 
L X1 X2 Xf1 Xf2 b 
1 0 -0.555 0.444 0 8 
0 1 0.111 0.111 0 2 
0 0 0.666 -0.333 1 6 
 
De onde concluímos a nova solução: 
Variáveis não básicas: Variáveis básicas Valor de L: 
 x2 = 0 X1 = 2 L = 8 
xf1 = 0 xf2 = 6 
A função objetivo na nova solução está escrita em termos das variáveis 
não básicas x2 e xf1.as variáveis básicas tem coeficientes nulos. 
A solução obtida tem L = 8, contra L = 0 da solução inicial. É melhor, mas 
ainda não é ótima, pois o coeficiente de x2 na função objetivo é negativo. 
Variável que entra: x2 (coeficiente negativo de maior valor absoluto na função 
objetivo). 
Variável que sai: 
Vamos dividir os termos independentes pelos coeficientes positivos de x2: 
2 ÷0.111 = 18 
6 ÷0.666 = 9 → menor valor: sai a variável dessa linha no caso xf2. 
 
Reescrevendo a nova linha tabela como os resultados obtidos teremos: 
L X1 X2 Xf1 Xf2 b 
1 0 0 0.1666 0.8333 13 
0 1 0 0.1666 -0.1666 1 
0 0 1 -0.5 1.5 9 
 
A nova solução será, portanto: 
Variáveis não básicas: Variáveis básicas Valor de L: 
xf1 = 0 x1 = 1 L = 13 
Xf2 = 0 x2 = 9 
A função objetivo está escrita em termos das variáveis não básicas xf1 e 
xf2, pois os coeficientes das variáveis são nulos. O valor de L passou de L = 8 
para L = 13. Essa solução é ótima, pois os coeficientes das variáveis não básicas 
na função objetivo são positivos. Se xf1 ou xf2 entrar na base, o valor de L 
diminui, contrariando o objetivo. 
 
7.Ferramentas computacionais para resolução de 
problemas lineares 
Resolução utilizando o R: Para a resolução do exercício no R podem ser 
utilizados entre outros, os pacotes ‘boot’ (CANTY; RIPLEY, 2012) e ‘Rglpk’ 
(HORNIK; THEUSSL, 2012) que possuem funções para resolver problemas de 
programação linear. 
Resolução utilizando o LINDO: Para proceder a resolução por meio do LINDO é 
necessário que após abrir o programa se escreva max ou min antes da função 
objetivo e após a mesma introduza a expressão subject to. Então, entre com as 
restrições, finalizando com a expressão end. 
Resolução utilizando o EXCEL: Inicialmente deve-se transferir os dados do 
problema para a planilha do excel utilizando qualquer uma das células. Como o 
problema apresenta apenas duas variáveis escolha duas células e introduza os 
coeficientes da função objetivo Z. Em seguida, para as variáveis de decisão 
deixe duas células em branco abaixo das mesmas. Escolha outra célula e 
formule a função objetivo conforme foi dada no exercício, multiplicando-se o 
coeficiente 4 pela célula em branco abaixo de x1, que representa x1, após 
multiplique 1 pela célula em branco abaixo de x2, que representa x2. Feito isso, 
deve-se inserir as restrições do modelo. Os valores abaixo de x1 e x2 
representam os coeficientes de restrição do modelo, as equações de restrição 
são dadas pela soma das multiplicações dos coeficientes de restrição pelas 
variáveis de decisão (células em branco abaixo de x1 e x2). Feito isso, deve-se 
inserir as constantes que representam os recursos disponíveis, dados no 
exercício. 
Para livre acesso encontrei a ferramenta LibreOffice que tem a maioria das 
funções do Excel, sendo um bom substituto para o mesmo.

Outros materiais