Escolar Documentos
Profissional Documentos
Cultura Documentos
Programação Linear
2 x1 + 3x2 ≤ 1 2
Sujeito à 2 x1 + 1x2 ≤ 8
x ,x ≥ 0
1 2
Onde x1 é a quantidade de mesa e x2 é a quantidade de armários.
Como o conjunto solução das restrições forma um domínio solução, existe uma
infinidade de soluções das combinações de x1 e x2 que satisfazem as restrições. Vamos
usar um raciocínio lógico e tentar encontrar um par de valores que fornece um lucro
máximo.
Para conhecermos o novo valor de x1, vamos voltar ao sistema das restrições, mas agora
com x2 = 0.
2x1 + 3x2 ≤ 1 2 x1 ≤ 6
para x2 = 0, temos
2x1 + 1x2 ≤ 8 x1 ≤ 4
Como para fazer uma mesa, gastam-se os dois recursos, é evidente que o maior valor
possível para x1 é 4, já que não teriamos mão-de-obra suficiente para fazermos 6 mesas.
A nova programação da produção dá melhor lucro do que a primeira.
: x1 = 4; x2 = 0; Z = 4*4 + 1*0 = 16 u.m.
2 * 4 + 3*0 = 8 ≤ 1 2
A solução é viável, já que satisfaz todas as restrições
2 * 4 + 1* 0 = 8 ≤ 8
Assim, partimos de uma solução viável (x1 = 0; x2 = 0; z = 0) para outra solução viável
(x1 = 4; x2 = 0; z = 16), que dá o melhor lucro usando os seguintes critérios:
• Começamos por aumentar a variável que mais contribuí para o lucro, neste caso, a
variável que tem o maior coeficiente na função objectivo.
• Escolhida a variável, sua produção foi estabelecida no maior valor possível, isto é,
o valor que satisfaz todas as inequações das restrições ou o mínimo valor positivo.
Da equação 2, cujo o recurso máximo é de 8 H.h, temos: 2x1+ 1*1 = 8 ⇒ x1novo = 3.5
Logo, um aumento de x2 em 1 unidade, exige uma redução de x1 em 0.5: “4-3.5 = 0.5”
Variável de Folga
Introduz-se uma variável de folga, para cada restrição do tipo ≤ no primeiro membro da
inequação e transfoma-se esta em equação.
Variável de Excesso
Restrições do tipo ≥ normalmente referem-se a quantidade mínima necessária que deve
ser utilizada na combinação de diferentes actividades. A introdução de uma variável de
excesso numa inequação, transforma esta em equação.
A variável x3 pode ser de excesso ou folga. Em termos matemáticos a variável não restrita
é substituida por duas variáveis não negativas: x3 = x3+ - x3- onde x3+ ; x3- ≥ 0.
• Se x3+ > 0 e x3- = 0 então x3+ é variável de folga;
• Se x3- > 0 e x3+ = 0 então x3- é variável de excesso;
• Se x3+ > 0 e x3- > 0, o problema de propgramação linear não tem solução.
Se todas as variáveis assumem valores não negativos, a solução básica é uma solução
admissível, caso contrário esta não é solução admissível. O número possível de soluções
básicas para m equações e n variáveis é dado pela fórmula.
m!
C nm =
n!( m − n)!
c) Max Z = 2x1 + 3x2 +5x3 Max Z = 2x1 + 3x2 + 5x3+ - 5x3- + 0x4 + 0x5
x1 + x2 − x3 ≥ − 5
− 6x + 7 x − 9x ≤ 4
1 2 3
Sujeito. à Sujeito à
x1 + x2 + 4 x3 = 1 0
x1 , x2 ≥ 0; x3 ∈ R
− x1 − x 2 + x 3+ − x 3− + x 4 + 0 x 5 = 5
− 6 x1 + 7 x 2 + − 9 x 3+ + 9 x 3− + 0 x 4 + x 5 = 4
+ −
x1 + 3x 2 + 4 x 3 − 4 x 3 + 0 x 4 + 0 x 5 = 1 0
+ −
x1 , x 2 , x 3 , x 3 , x 4 , x 5 ≥ 0
2.3.3 PROCEDIMENTO DO MÉTODO ALGÉBRICO
• Calcular os valores das outras variáveis do sistema bem como o valor da função
objectivo, obtendo-se a solução básica. V(x1,x2,x3,...,xm+1) e Z1.
NB. Todas as variáveis atribuídas ou iguais a zero, são variáveis não básicas (v. livres).
Todas as variáveis diferentes de zero, são variáveis básicas (v. dependentes).
Passo 3. Escrever tanto as variáveis básicas como a função objectivo em função das
variáveis não básicas, passando para o primeiro membro as variáveis básicas, isto é:
Vbásicas = f(Vnbásicas) e Z = z1 + f(Vnbásicas) = z1 + CiXi.
Passo 5. Usando as variações encontradas, determinar o novo vértice, bem como deve-se
calcular o novo valor da função objectivo, como segunda aproximação.
Passo 6. Repetir os passos 3, 4, e 5 até que todos Ci < 0 para maximização e todos Ci > 0
para minimização, só assim é que o processo de procura da solução acaba e a solução
óptima será: Zóptimo = Zn-1.
x1 + x2 ≤ 1 0
Sujeito à x1 − 2 x2 ≤ 6
3x + x ≤ 1 2 e a s v a r i a vxe, xi s ≥ 0
1 2 1 2
Passo 1. Introdução das variáveis de folga.
x3 = 1 0
x4 = 6 ; o valor de função objectivo é: z1 = 2*0 – 0 = 0.
x = 1 2
5
As variáveis x1 e x2 são não básicas e x3, x4, x5 são variáveis básicas.
Passo 3.1 Escrever o sistema do passo 1, de forma que (x3,x4,x5) = f(x1,x2) bem com
z = z1 + f(x1,x2).
x3 = 1 0− x1 − x2
x4 = 6 − x1 + 2 x2
x = 1 2− 3x − x
5 1 2
e z = 0 + 2x1 - x2
Passo 4.1. Como na função objectivo do passo 3.1, existe um Ci > 0, vamos variar x 1 e
mantemos o x2 em zero, sem esquecer a restrição de não negatividade (x2 = 0).
Do passo 3.1 se
x3 ≥ 0 1 0− x1 ≥ 0 x1 ≤ 1 0
x4 ≥ 0 então 6 − x1 ≥ 0 ⇒ x1 ≤ 6
x ≥ 0 1 2− 3x ≥ 0 x ≤ 4 o m i n i me '4o , l o g ox = 4
5 1 1 1
x3 = 1 0− 4 x3 = 6
x4 = 6 − 4 ⇒ x4 = 2 novo Z2 = 0 + 2*4-0 = 8.
x = 1 2− 3 * 4 x = 0
5 5
Apontamentos de Investigação Operacional 34
Alberto Mulenga
Capítulo 2. Programação Linear
As variáveis (x2, x5) são não básicas e as variáveis (x1,x3,x4) são básicas.
Passo 3.2. Vamos rescrever o sistema do passo 3.1 de tal forma que (x1,x3,x4) = f(x2,x5),
z = z2 + f(x2,x5) e x1 entra na base enquanto x5 sai.
1 1
x
3 = 1 0 − ( 4 − x − x5 ) − x 2
x3 = 1 0− x1 − x2 x3 = 1 0− x1 − x2
2
3 3
1 1
x4 = 6 − x1 + 2 x2 ⇒ x4 = 6 − x1 + 2 x2 ⇒ x4 = 6 − (4 − 3 x2 − 3 x5 ) + 2 x2
x = 1 2− 3x − x x = 4 − 1 x − 1 x
5 1 2
1
3
2
3
5
x = 4 −
1
x −
1
x5
1 2
3 3
1 1 1 1
x1 = 4 − x 2 − x5 x1 = 4 − x 2 − x5
3 3 3 3
1 1 2 1
⇒ x3 = 6 + x 2 + x5 − x 2 ⇒ x3 = 6 − x 2 + x 5
3 3 3 3
1 1 7 1
x
4 = 2 + x 2 + x5 + 2 x 2 x
4 = 2 + x 2 + x5
3 3 3 3
1 1 5 2
z = 2x1 - x2 = 2( 4 − x 2 − x5 ) – x2 = 8 - x 2 − x5
3 3 3 3
Como todos ci < 0, não temos mais alguma possibilidade de aumentar o valor da função
objectivo, então já temos a solução óptima.