Informe se o objetivo é maximizar ou minimizar e monte o modelo de um dos dois jeitos: em Equações, escrevendo a função objetivo e cada restrição como no modelo matemático (8x1 + 20x2; x1 + x2 <= 12); ou na Tabela de coeficientes, com uma coluna por variável e o sinal e o termo b de cada restrição. Os dois modos ficam sincronizados.
Objetivo
Entrada
Todas as variáveis de decisão são não negativas (x ≥ 0). Use vírgula ou ponto para decimais e barra para frações (ex.: 2/3). Coeficiente em branco vale zero; o termo b é obrigatório.
Escreva com qualquer número de variáveis, com qualquer nome (x1, x2, x3… ou xS, xT). Valem + e − entre os termos, coeficiente junto da variável ou com * (8x1 ou 8*x1), decimais com vírgula, frações (1/2x1), parênteses (2(x1 + x2)) e variáveis dos dois lados do sinal (x1 >= x2 + 3). Sinais: <=, >=, = ou ≤, ≥. Produtos entre variáveis (x1*x2) e potências (x1^2) não são lineares e o Simplex não resolve.
Colar o modelo completo
Uma linha para a função objetivo e uma para cada restrição. A linha “s.a.” e a de não negatividade são ignoradas.
2
Forma padrão
As desigualdades viram igualdades: folga (+f) nas restrições ≤, excesso (−e) e artificial (+a) nas restrições ≥, e só artificial nas igualdades. Havendo artificiais, o Simplex roda em duas fases.
3
Quadros do Simplex
Em cada quadro: entra na base a variável com o coeficiente mais negativo da linha Z; sai a variável da linha com a menor razão b ÷ a (só elementos positivos da coluna). O pivô, em destaque, vira 1 e o resto da coluna vira 0 por operações entre linhas.
4
Método gráfico
Com duas variáveis de decisão, o mesmo problema se resolve no plano: traçam-se as retas das restrições, define-se a região factível e desloca-se a curva de nível de Z no sentido de melhoria até o último ponto em que ela ainda toca a região. Arraste o controle da curva de nível para ver isso acontecer.
5
Resultado
Valor ótimo de Z, valores das variáveis, situação de cada restrição e, com duas variáveis, a conferência entre o Simplex e o método gráfico.
O método Simplex
Algoritmo proposto por George B. Dantzig em 1947 para resolver problemas de programação linear: maximizar ou minimizar uma função linear sujeita a restrições lineares.
Origem e ideia geométrica
Dantzig desenvolveu o método quando trabalhava no planejamento logístico da Força Aérea dos Estados Unidos, logo após a Segunda Guerra Mundial. As restrições de um problema de programação linear delimitam uma região viável convexa, um poliedro. Se existe solução ótima, ao menos um vértice desse poliedro é ótimo. O Simplex parte de um vértice (em geral a origem) e caminha para um vértice vizinho que melhore o valor de Z, até que nenhum vizinho seja melhor. Na ferramenta, problemas com duas variáveis mostram esse caminho no gráfico do resultado.
Algebricamente, cada vértice corresponde a uma solução básica viável: uma variável básica por restrição, com as demais (não básicas) valendo zero. Andar de um vértice para o vizinho é trocar uma variável da base por outra.
Os passos
1 · Forma padrãoConverter desigualdades em igualdades com folga, excesso e artificiais; b ≥ 0.
2 · Quadro inicialBase com folgas (e artificiais); linha Z escrita como Z − Σ cjxj = 0.
3 · OtimalidadeSem coeficiente negativo na linha Z, a solução atual é ótima: pare.
4 · Entrada e saídaEntra o mais negativo da linha Z; sai a linha de menor razão b ÷ a, com a > 0.
5 · PivoteamentoDividir a linha do pivô pelo pivô e zerar o resto da coluna. Voltar ao passo 3.
Forma padrão
Para um problema de maximização com n variáveis e m restrições:
Max Z = Σjcjxj s.a. Σjaijxj + fi = bi, xj, fi ≥ 0(1)
Um termo b negativo é corrigido multiplicando a restrição por −1, o que inverte o sinal da desigualdade. Um problema de minimização é resolvido como maximização de −Z:
Min Z = Σjcjxj ⇔ Max (−Z) = Σj (−cj)xj(2)
Regras do quadro
Entrada. A linha Z guarda os custos reduzidos zj − cj. Um valor negativo indica que aumentar aquela variável aumenta Z; entra a de valor mais negativo (critério de Dantzig). Empates são resolvidos pela coluna mais à esquerda.
Saída. Para a coluna k que entra, calcula-se a razão bi ÷ aik apenas nas linhas com aik > 0. A menor razão indica a restrição que primeiro bloqueia o crescimento de xk; sua variável básica sai.
r = arg min { bi ÷ aik : aik > 0 }(3)
Pivoteamento. Com pivô p = ark: Lr ← Lr ÷ p; para as demais linhas, inclusive a de Z, Li ← Li − aik · Lr. É a eliminação de Gauss-Jordan aplicada a uma coluna. A ferramenta mostra essas operações acima de cada quadro.
Método das duas fases
Restrições ≥ e = não oferecem uma variável de folga com coeficiente +1 para iniciar a base, então recebem uma variável artificial. Na Fase 1 minimiza-se a soma das artificiais, W = Σ ai. Se o mínimo for zero, a base encontrada é viável para o problema original; as colunas artificiais saem e, na Fase 2, o Simplex continua com a função objetivo original. Se W > 0 ao final da Fase 1, o problema não tem solução viável.
Casos especiais
Solução ilimitada: a coluna que entra não tem elemento positivo; nenhuma restrição limita o crescimento de Z.
Múltiplas soluções ótimas: no quadro ótimo, uma variável não básica tem coeficiente zero na linha Z. Ela pode entrar na base sem mudar Z; a ferramenta mostra esse quadro alternativo.
Degeneração: empate na razão mínima, ou variável básica valendo zero. Pode gerar iterações sem ganho e, raramente, ciclagem; após muitas iterações a ferramenta passa à regra de Bland (menor índice).
Problema inviável: as restrições são incompatíveis; detectado pela Fase 1 com W > 0.
A ferramenta traz um exemplo de cada caso no seletor de exemplos.
Leitura do quadro ótimo
As variáveis básicas têm seus valores na coluna b; as não básicas valem zero. Uma folga positiva indica recurso não utilizado; folga zero indica restrição ativa (recurso esgotado). O coeficiente da folga na linha Z do quadro ótimo é o preço-sombra da restrição: quanto Z melhora por unidade adicional de bi, dentro da faixa em que a base continua ótima.
O método gráfico
Quando o modelo tem apenas duas variáveis de decisão, cada solução é um ponto do plano (x1; x2) e o problema pode ser resolvido desenhando-o. O método gráfico não serve para problemas maiores, mas mostra a geometria que o Simplex percorre algebricamente: a região factível é convexa e, se há ótimo, ele está em um de seus vértices, os pontos extremos factíveis (PEF). Na ferramenta, a Etapa 4 resolve o modelo pelos cinco passos abaixo e marca sobre o gráfico os quadros do Simplex.
1 · RetasTrocar ≤ e ≥ por = e traçar cada restrição pelos cortes nos eixos.
2 · Região factívelTeste do ponto da origem em cada reta; S é a interseção dos semiplanos com o 1º quadrante.
3 · Gradiente∇Z = (coeficiente de x1; coeficiente de x2).
4 · Sentido de melhoriaMax: mesmo sentido do gradiente. Min: sentido oposto.
5 · Solução ótimaDeslocar a curva de nível até o último ponto em que ela toca S.
Dicas da aula
Coordenadas do ponto ótimo: resolver o sistema formado pelas equações das retas que se cruzam no ponto ótimo.
Valor ótimo: substituir as coordenadas na função objetivo, Z* = Z(x*).
Curvas de nível: igualar a F.O. a um valor qualquer (um chute) e traçar a reta correspondente; todas as curvas de nível são paralelas entre si e perpendiculares ao gradiente. Uma direção perpendicular a ∇Z = (5; 3) é obtida invertendo as coordenadas e trocando um sinal: (−3; 5) ou (3; −5).
Conferência: como o ótimo está em um vértice, basta calcular Z em cada PEF e escolher o maior (Max) ou o menor (Min).
Exemplo da aula
Max Z = 600x1 + 800x2, sujeito a 100x1 + 50x2 ≤ 1000 e 50x1 + 100x2 ≤ 650. A reta R1 passa por (0; 20) e (10; 0); R2, por (0; 6,5) e (13; 0). Os PEF são P1 = (0; 0), P2 = (0; 6,5), P3 = (9; 2), da interseção de R1 e R2, e P4 = (10; 0). A curva Z1 = 2.400 cruza a região; Z2 = 9.600 já não a toca. O último contato é em P3, com Z* = 600 · 9 + 800 · 2 = 7.000. Esse problema está no seletor de exemplos, junto com o Exemplo 2 (minimização) e o exercício da restrição redundante.
O que o gráfico revela
Região vazia: as restrições não têm ponto em comum; o problema é infactível.
Região ilimitada com ótimo: a região não fecha, mas no sentido de melhoria ela é limitada e o ótimo existe.
Problema ilimitado: a curva de nível pode ser deslocada para sempre no sentido de melhoria sem sair da região.
Múltiplas soluções: a curva de nível é paralela a uma aresta da região; todos os pontos da aresta são ótimos.
Restrição redundante: sua reta não forma a fronteira da região; retirá-la não muda S.
Degeneração: três ou mais retas passam pelo mesmo vértice.
DANTZIG, G. B. Linear programming and extensions. Princeton: Princeton University Press, 1963.
HILLIER, F. S.; LIEBERMAN, G. J. Introdução à pesquisa operacional. 9. ed. Porto Alegre: AMGH, 2013.
TAHA, H. A. Pesquisa operacional. 8. ed. São Paulo: Pearson Prentice Hall, 2008.
CHVÁTAL, V. Linear programming. New York: W. H. Freeman, 1983.
BLAND, R. G. New finite pivoting rules for the simplex method. Mathematics of Operations Research, v. 2, n. 2, p. 103–107, 1977.
WILHELM, V. E. Método Simplex algébrico. Pesquisa Operacional I, notas de aula. Curitiba: UFPR. Disponível em: https://docs.ufpr.br/~volmir/PO_I/DOC_simplex_algebrico.pdf.
ANDRETTA, M. SME0510 Introdução à pesquisa operacional: aula 7, método simplex. São Carlos: ICMC-USP, 2019. Disponível em: https://sites2.icmc.usp.br/andretta/ensino/aulas/sme0510-2-19/aula7.pdf.
CHOUEIRI, A. C. Notas de aula de Pesquisa Operacional: capítulo 3, método gráfico para PL. Disponível em: https://alexandrechecoli.github.io/4-prog-linear/livro/método-gráfico-para-pl.html.
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ. Pesquisa Operacional 1: aula 7, método gráfico para solução de modelos matemáticos. Londrina: UTFPR, Campus Londrina. Material de aula.
INFORMATECDIGITAL. O método Simplex: guia completo e aplicações. Disponível em: https://informatecdigital.com/pt/o-método-simplex/.
Desenvolvedor
Ferramenta computacional desenvolvida por Prof. MSc. Lucas Ramon dos Santos Hermogenes, para apoiar o ensino de Pesquisa Operacional e programação linear, pelo método Simplex e pelo método gráfico. O método Simplex é de autoria de George B. Dantzig (1947).
Prof. MSc. Lucas Ramon dos Santos Hermogenes
Mestre em Engenharia de Produção (UFF) · Engenheiro Mecânico e de Produção · Professor universitário, membro do NDE de Engenharia de Produção da UNISUAM
Lucas Hermogenes é Mestre em Engenharia de Produção pela Universidade Federal Fluminense (UFF) e graduado em Engenharia Mecânica e Engenharia de Produção. Atua há mais de 14 anos no setor industrial, com experiência nos segmentos metalúrgico, plástico e moveleiro, desenvolvendo e liderando melhorias em Planejamento e Controle da Produção (PCP), Qualidade, Suprimentos, Gestão de Projetos e Gestão do Desempenho Operacional.
Também possui experiência em programação, análise de dados e desenvolvimento de ferramentas digitais e soluções low-code para automação de rotinas e apoio à tomada de decisão. Desenvolveu, juntamente com o Prof. Dr. Marcos dos Santos, o Prof. Dr. Carlos Francisco Simões Gomes e o Prof. MSc. Isaque David Pereira de Almeida, o método e o software SM-3NAG (SWARA–MOORA–3NAG).
No campo acadêmico, é professor universitário nas áreas de Engenharia, Logística, Gestão e Métodos Quantitativos, com experiência na construção de materiais didáticos, roteiros práticos e projetos aplicados. Atualmente integra o NDE (Núcleo Docente Estruturante) de Engenharia de Produção da UNISUAM.
Sua missão é simplificar conceitos complexos e acelerar a aplicação prática de métodos e dados, transformando informação em decisões seguras, objetivas e implementáveis.
HERMOGENES, L. R. S. Método Simplex – For Decision Making: ferramenta on-line para programação linear pelos métodos Simplex e gráfico. 2026. Método original: DANTZIG, G. B. Linear programming and extensions. Princeton: Princeton University Press, 1963.
Ferramentas irmãs: SM-3NAG – For Decision Making, para o método híbrido SWARA-MOORA-3NAG, e Método de Borda – For Decision Making.