Função objetivo
Use x e y como variáveis de decisão.
Restrições
Arraste uma linha de fronteira no gráfico para ajustar o lado direito.
Use esta Calculadora de Programação Linear (Método Gráfico) para informar valores, ajustar opções e analisar resultados em uma área de trabalho compacta e responsiva.
Os resultados são calculados automaticamente conforme você informa os dados.
Use x e y como variáveis de decisão.
Arraste uma linha de fronteira no gráfico para ajustar o lado direito.
▼ Veja explicações e dicas abaixo ▼
Programação linear é um método para escolher os melhores valores das variáveis de decisão quando o objetivo e as restrições podem ser escritos com expressões lineares. Em um problema com duas variáveis, elas geralmente são chamadas de \(x\) e \(y\). O objetivo é tornar o valor da função objetivo o maior ou o menor possível, ainda satisfazendo todas as restrições.
Um modelo simples de programação linear tem três partes:
Em um modelo com duas variáveis, a função objetivo geralmente tem a forma:
As restrições geralmente têm formas como:
A calculadora resolve exatamente problemas contínuos de programação linear com duas variáveis a partir de entradas decimais. Ela verifica pontos de vértice, representantes viáveis das fronteiras e direções de recessão. Assim, também pode classificar semiplanos, faixas, retas, modelos inviáveis e funções objetivo ilimitadas.
A programação linear é útil porque muitas decisões reais envolvem recursos limitados. Uma empresa pode querer maximizar o lucro com mão de obra e materiais limitados. Uma transportadora pode querer minimizar o custo atendendo aos requisitos de entrega. Um estudante pode usá-la para entender como sistemas de inequações se relacionam com a otimização.
O valor da programação linear não está apenas no número final. Ela também ajuda a perceber quais restrições são mais importantes. Uma restrição ativa na solução pode ser o motivo pelo qual não é possível melhorar ainda mais a função objetivo. Uma restrição com folga pode não afetar a melhor resposta para o modelo atual.
O método gráfico funciona porque uma inequação linear com duas variáveis divide o plano cartesiano em um semiplano. Já uma restrição de igualdade limita os pontos viáveis à sua reta de fronteira. Quando todas as restrições são representadas juntas, sua sobreposição é a região viável. Se existir um ótimo finito para uma região viável poligonal limitada, ele poderá ser encontrado em um vértice.
O processo básico é:
Para a função objetivo:
onde:
Uma restrição típica é:
onde:
Para um limite de recurso \(\le\), a folga pode ser escrita como:
Para um requisito mínimo \(\ge\), a ideia semelhante é o excedente:
Um valor de folga ou excedente igual a zero significa que a restrição está ativa nesse ponto.
Suponha que uma pequena oficina fabrique dois produtos. Seja \(x\) o número de unidades do primeiro produto e \(y\) o número de unidades do segundo produto. A função objetivo é:
As restrições são:
Os vértices viáveis são:
| Vértice | Valor da função objetivo \(z = 40x + 30y\) |
|---|---|
| \((0, 0)\) | \(0\) |
| \((40, 0)\) | \(1600\) |
| \((40, 20)\) | \(2200\) |
| \((20, 60)\) | \(2600\) |
| \((0, 80)\) | \(2400\) |
O maior valor da função objetivo é \(2600\), portanto o melhor vértice é:
Nesse ponto, as duas primeiras restrições estão ativas, enquanto a restrição \(x \le 40\) tem folga.
Agora suponha que o objetivo seja minimizar:
com as restrições:
Esse tipo de modelo descreve uma situação em que requisitos mínimos precisam ser atendidos. Como as inequações usam \(\ge\), a região viável fica do lado de cada reta que satisfaz o mínimo.
Alguns vértices viáveis e seus valores da função objetivo são:
| Vértice | Valor da função objetivo \(z = 6x + 8y\) |
|---|---|
| \((0, 16)\) | \(128\) |
| \((4, 8)\) | \(88\) |
| \((9, 3)\) | \(78\) |
| \((18, 0)\) | \(108\) |
O menor valor listado é \(78\), portanto o vértice que minimiza a função é:
Uma região viável ilimitada não significa automaticamente que o modelo não tenha uma resposta útil. A questão importante é saber se a função objetivo pode continuar melhorando indefinidamente dentro da região viável.
Por exemplo:
sujeita apenas a:
Não há limite superior para \(x\) nem para \(y\). Avançar pelo primeiro quadrante continua aumentando \(z\), portanto não existe um máximo finito.
Um resultado finito como “Máx. \(z\) em \((x, y)\)” ou “Mín. \(z\) em \((x, y)\)” geralmente vem da comparação entre vértices viáveis em uma região poligonal não degenerada. Modelos formados apenas por igualdades podem ter um valor finito ao longo de uma reta ou semirreta; nesse caso, a calculadora informa um ponto representativo e descreve o conjunto completo de pontos ótimos.
Quando o modelo tem vértices, a tabela de vértices mostra os candidatos comparados, e sua linha ótima é o melhor vértice finito selecionado. Um modelo finito formado apenas por igualdades pode não ter vértices, então sua tabela pode ficar vazia.
Uma restrição ativa tem folga igual a zero ou quase zero no ponto ótimo. Isso significa que o ponto ótimo está na reta de fronteira dessa restrição. Um valor de folga positivo geralmente indica que a restrição não foi totalmente utilizada na solução selecionada.
Se o resultado disser que o modelo é inviável, as restrições entram em conflito e nenhum ponto satisfaz todas elas. Se o resultado disser que a função objetivo é ilimitada, o modelo ainda pode ser matematicamente válido, mas não possui um melhor valor finito na direção escolhida. Para um modelo finito formado apenas por igualdades e sem vértices, use o ponto representativo e a descrição do conjunto ótimo em vez de esperar uma linha na tabela.
O gráfico é um recurso visual. Os números informados vêm das equações do modelo, das interseções candidatas, das verificações de viabilidade e das comparações dos valores da função objetivo.
Use um modelo de programação linear com duas variáveis quando:
Exemplos comuns em sala de aula e na prática incluem planejamento da produção, problemas de dieta ou mistura, modelos de transporte, distribuição de orçamento, programação com dois tipos de atividade e problemas de lucro ou custo limitados por recursos.
O método gráfico dos vértices foi desenvolvido para modelos lineares com duas variáveis. Ele não se destina a problemas com três ou mais variáveis, fórmulas não lineares, inequações estritas, entradas aleatórias, múltiplos objetivos ou decisões que precisem ser exclusivamente inteiras.
A calculadora aceita coeficientes numéricos decimais e negativos, mas o significado desses valores depende do modelo. Um coeficiente negativo pode fazer sentido em alguns modelos algébricos e não em outros. As variáveis e os coeficientes não têm unidades fixas, então você precisa decidir o que \(x\), \(y\), os lados direitos e o valor da função objetivo representam.
Restrições de igualdade são mais restritivas que inequações porque mantêm apenas os pontos que estão exatamente sobre uma reta. Um modelo com várias restrições de igualdade pode facilmente se tornar inviável ou produzir um conjunto viável sem uma comparação útil entre vértices.
Entradas decimais e em notação científica são convertidas em valores racionais exatos antes das verificações de viabilidade e otimização. Resultados fracionários são exibidos exatamente, com uma aproximação decimal quando útil. O gráfico converte esses resultados exatos em coordenadas de tela, portanto o recorte do gráfico e o arredondamento visual não afetam a resposta informada. As entradas aceitam até 30 algarismos significativos, expoentes de \(-300\) a \(300\) e 100 restrições do usuário.
Esse tipo de calculadora não substitui o julgamento profissional. Quando um resultado de otimização afetar dinheiro, segurança, trabalho de engenharia, obrigações legais, registros oficiais ou decisões relacionadas à saúde, verifique cuidadosamente o modelo e consulte um profissional qualificado quando apropriado.
Maximizar significa escolher \(x\) e \(y\) para tornar o valor da função objetivo o maior possível. Minimizar significa escolhê-los para tornar o valor da função objetivo o menor possível. As restrições permanecem iguais; apenas a direção da comparação da função objetivo muda.
Em um problema de programação linear com duas variáveis, a região viável é formada por fronteiras retas. Para uma região viável limitada com um ótimo finito, o melhor valor de uma função objetivo linear ocorre em um vértice; portanto, verificar os vértices é suficiente para encontrar o ótimo.
Uma restrição ativa é exatamente atingida na solução. O ponto ótimo está sobre a reta de fronteira dessa restrição, e sua folga é zero ou próxima de zero. As restrições ativas costumam ser importantes porque limitam novas melhorias da função objetivo.
Um resultado inviável significa que as restrições não podem ser todas verdadeiras ao mesmo tempo. Por exemplo, uma restrição pode exigir que um valor seja pelo menos \(10\), enquanto outra exige que a mesma expressão seja no máximo \(5\). Nesse caso, nenhum ponto pode satisfazer o modelo completo.
Um resultado ilimitado significa que a região viável contém uma direção na qual a função objetivo pode continuar melhorando sem limite. Isso não significa necessariamente que as entradas foram digitadas incorretamente. Muitas vezes, significa que falta ao modelo uma restrição superior ou inferior realista.
O método gráfico dos vértices usado aqui é destinado a modelos com duas variáveis. Problemas com mais de duas variáveis geralmente precisam de métodos algébricos de otimização, como o método simplex, abordagens baseadas em matrizes ou softwares especializados de otimização.
Livros e livros didáticos abertos