Desenvolvido em 1947 por George Dantzig, o método simplex é um
procedimento algébrico baseado em conceitos geométricos. É usado com frequência
para solucionar problemas de grande porte, demonstrando ser um método de
extrema eficiência. Sua aplicação é feita através de pacotes de softwares
sofisticados, exceto para pequenos problemas e aplicações acadêmicas. Suas
extensões e variações também possibilitam realizar análise de sensibilidade
(HILLIER e LIEBERMAN, 2013).
Para o entendimento do método Simplex é importante fixar que a PL busca
encontrar valores para n variáveis de decisão (x
1, x
2, ..., x
n), não negativos, para
maximizar ou minimizar uma expressão linear (Z = c
1x
1+ c
2x
2+ ... + c
nx
n),
atendendo a um conjunto de restrições lineares, na forma de igualdades ou
desigualdades, com a representação na forma matricial expressa por Ax {≤, =, ≥} b,
onde (PIZZOLATO e GANDOLPHO, 2012):
- A é a matriz dos coeficientes tecnológicos;
- x é um vetor coluna com dimensão n reunindo as variáveis de decisão;
- b ≥ 0 é o vetor dos recursos ou insumos disponíveis para a produção.
Assim sendo, a forma padrão da PL representada por matrizes fica (PIZZOLATO
e GANDOLPHO, 2012):
Max (ou Min)
sujeito a
𝑍 = 𝑐𝑥
𝐴𝑥 = 𝑏
𝑥 ≥ 0
FIG. 3.2 – Matrizes da forma padrão da Programação Linear (PIZZOLATO e
GANDOLPHO, 2012)
Onde:
- A matriz m x n dos coeficientes tecnológicos;
- b vetor coluna m x 1 das constantes do lado direito;
- x vetor coluna n x 1 das variáveis de decisão;
- c vetor linha 1 x n dos coeficientes da função objetivo.
todas as restrições se transformam em equações com a inclusão de variáveis de
excesso. Esta variável, de folga ou de excesso, adicionada a desigualdade tem valor
igual ao inverso da desigualdade, desta forma o sinal de desigualdade desaparece e
dá lugar ao sinal de igualdade, conforme cada caso inicialmente considerado
(PIZZOLATO e GANDOLPHO, 2012).
A solução gráfica da PL que introduz o conceito e ampara o procedimento
algébrico de solução do simplex e pode ser demonstrada com facilidade em
problemas de duas variáveis de decisão (x
1e x
2), onde cada uma delas é
posicionada sobre cada um os eixos de um plano cartesiano, respectivamente.
Considerando a premissa de não negatividade, toda a análise deverá acontecer no
primeiro quadrante. As restrições aparecem sobre este plano cartesiano na forma de
retas onde as inclinações são determinadas por seus parâmetros. O polígono
delimitado a partir dos eixos do primeiro quadrante e pelo cruzamento das restrições
é denominado como espaço das soluções viáveis. Os vértices desta figura são
determinados como pontos extremos factíveis (PEF) da solução e a melhor solução
ponto extremo factível será a solução ótima para o problema. Neste momento,
traça-se o vetor gradiente com os coeficientes da função objetivo (FO), que é exatamente
normal a FO e que indica à direção de crescimento da FO. A solução ótima é
encontrada deslocando a FO até atingir o ponto que resultará no maior valor de Z
quando o problema for de maximização e, no menor valor de Z quando o problema
for de minimização (HILLIER e LIEBERMAN, 2013).
A solução ótima poderá resultar em uma solução única, quando existir apenas
um PEF ótimo; em soluções múltiplas quando existir dois PEFs ótimos; em uma
solução ilimitada quando o espaço de soluções viáveis for aberto na direção de
crescimento da FO; e, em uma solução infactível quando não existir um espaço de
soluções viáveis delimitado pelas restrições do problema (PIZZOLATO e
GANDOLPHO, 2012).
Imaginando um polígono formado inicialmente pelas restrições de não
negatividade, deduz-se que o espaço das soluções factíveis estará no primeiro
quadrante de um plano cartesiano. As restrições, na forma de retas delimitarão um
polígono. Sobre esta figura, o procedimento algébrico resolve o problema de PL
através de iterações onde parte da origem como valores para a FO (x
1= 0, x
2= 0);
em seguida testa a taxa de crescimento de cada parâmetro da FO e direciona o
teste para um dos dois PEFs mais próximos da origem com melhor resultado de Z. A
partir da escolha do primeiro PEF com melhor resultado de Z, da segunda iteração
em diante, o próximo PEF é testado e verificado se melhora ou piora o resultado da
FO. Se o resultado do teste piorar a FO, a solução ótima foi encontrada, pois a partir
dali não haverá mais nenhum PEF que possa melhorar a FO (HILLIER e
LIEBERMAN, 2013).
Ainda existem outras formas para a resolução do simplex, a forma algébrica, a
tabular e a matricial. A forma algébrica é a mais recomendada para o entendimento
da lógica do algoritmo, entretanto a forma tabular é a mais conveniente para resolver
o problema manualmente, enquanto que a forma matricial é a mais conveniente para
ser executada automaticamente em computador (HILLIER e LIEBERMAN, 2013).
As formas de resolução do simplex citadas acima visam realizar o pivotamento.
Este consiste na aplicação do método de eliminação de Gauss-Jordan, para que o
sistema de equações se converta para a forma canônica, em que a matriz dos
coeficientes seja uma matriz identidade (PIZZOLATO e GANDOLPHO, 2012).
Na forma algébrica, inicialmente as variáveis de decisão tem seu valor atribuído
à zero, são definidas nulas e chamadas de variáveis não básicas. As demais
variáveis, de folga ou de excesso, tem seu valor atribuído pela equação da restrição,
são chamadas de variáveis básicas e formam a base do sistema linear. A partir daí,
com a realização de cada iteração do pivotamento, uma variável não básica deverá
entrar na base, onde seu valor deixará de ser nulo e crescerá até o maior valor
possível dentro das restrições, podendo ser positiva ou eventualmente nula;
enquanto que deverá ser visto qual variável básica deverá sair da base e se tornar
nula (PIZZOLATO e GANDOLPHO, 2012).
Quando o problema é de maximização, a escolha da variável que entra é feita
pelo maior coeficiente positivo da função objetivo, pois, ele proporcionará o maior
crescimento da FO. Para escolher a variável que sai, deverá ter o cuidado de manter
as variáveis básicas não negativas, escolhendo a que tenha a maior taxa de
decrescimento e igualando-a a zero (PIZZOLATO e GANDOLPHO, 2012).
A forma tabular torna-se simples para organizar os cálculos analíticos descritos
sucintamente acima utilizando de quadros onde os números envolvidos em cálculos
matemáticos ficam destacados e registrados de forma compacta. A TAB. 3.2,
da PL (forma algébrica) com a forma tabular. No formato tabular a direita, na
primeira linha do quadro, a FO toma a forma de uma restrição igualada a 0 (b
0= 0),
tem o sinal de seus coeficientes invertidos ao passarem do lado direito para o lado
esquerdo da equação, e Z passa a compor a base do sistema como uma variável de
valor 1. Nas linhas seguintes, são apresentadas as equações das restrições
acrescidas das variáveis de folga (PIZZOLATO e GANDOLPHO, 2012).
Esta tabela mostra um exemplo tabular de estrutura inicial de um problema de
maximização com duas variáveis de decisão ou duas variáveis não básicas (x
1e x
2)
e três restrições que resultaram, neste caso, em três variáveis de folga (x
3, x
4e x
5).
O cabeçalho destaca quais elementos serão apresentados nas colunas; na linha da
equação 0, Z recebe o valor de 1, as variáveis não básicas recebem os respectivos
coeficientes da FO com sinal invertido, os coeficientes das variáveis básicas
recebem o valor zero e, b também é zero. Da linha da equação 1 a da equação 3
são apresentadas os coeficientes originais das restrições (a
ij) seguidos do valor 1
para a respectiva variável de folga e valor 0 para as demais. Os coeficientes são os
dados originais do problema quando se trata da primeira iteração, onde os valores
das variáveis não básicas são estabelecidos em zero resultando nos valores das
variáveis básicas iguais aos valores de contidos no vetor b, conforme demonstrado
na igualdade de vetores (x
1, x
2, x
3, x
4, x
5) = (0, 0, b
1, b
2, b
3) que é a primeira solução
básica viável. Da segunda iteração em diante, com a aplicação dos pivotamentos, os
coeficientes vão se modificando (HILLIER e LIEBERMAN, 2013).
TAB. 3.2 – Comparação da forma padrão com a forma tabular, adaptado de
(HILLIER e LIEBERMAN, 2013)
Forma algébrica Forma tabular
Variável básica Eq.
Coeficientes de: Lado direito