Você está na página 1de 33

PROGRAMAÇÃO LINEAR

Programação Linear pertencem a um conjunto


de modelos de Programação Matemática que
permitem determinar em que condições se
pode maximizar ou minimizar um dado
objectivo, dada a existência de um conjunto
de limitações. Estes modelos são
amplamentes aplicados em matérias de
gestão de recursos disponíveis, entre as
diversas tarefas ou actividades a serem
realizadas
Estes problemas caracterizam pelo seguinte;
• A existência de um objectivo, que pode ser
explicitado em termos das variáveis de
decisão do problema.
• A existência de restrições, tanto com relação
as quantidades com em relação entre elas.
F max/ min c ij . x ij
ij

x ij ai
ij

x ij o

F, a função objectiva que representa uma medida da vantagem ou


desvantagem atribuída pela decisão a cada solução do problema.

Para i=1,…,M; j=1,…, sendo ai as restrições a satisfazer por cada


solução de modo que seja realizável os recursos disponíveis, xij –
as variáveis que representam as incógnitas do problema e que se
definem para domínio preestabelecidos e Cij – constantes da
função objectiva.
Representação matemática

• Perante um problema concreto é necessário


formulá-lo em termos matemáticos por forma
a que este possa ser resolvido através de um
algoritmo apropriado.
• Isto implica reconhecer o objectivo do decisor
e, a partir daí, identificar as variáveis de
decisão, a função objectivo, as restrições e os
parâmetros do modelo.
Um problema clássico

• Uma empresa fabrica dois tipos de cadeiras, identificados


comercialmente como relax e bumba. Com a sua actividade
consegue obter em cada um deles uma margem de lucro
de 40 e 30 UM por cada, respectivamente.
• No processo de fabrico são utilizadas duas máquinas que
laboram 12 e 14 horas por dia, respectivamente.
• Por Cada cadeira relax necessita de 3 horas da primeira
máquina e 7 horas da segunda.
• Por sua vez, bumba necessita de 4 horas da primeira e 2
horas da segunda.
• Pretende-se identificar a melhor combinação de produção
a adoptar, de forma a maximizar o lucro.
Objectivo
• Neste exemplo da empresa, corresponde à
Maximização do lucro.
Variáveis de decisão
• As Variáveis de decisão são as grandezas que podem
ser controladas pelo decisor. Terão de ser definidas de
tal modo que permitam traduzir de forma adequada o
critério de decisão e as condições ou restrições
impostas pela situação real.
• No exemplo da empresa o lucro depende das
quantidades produzidas de cada tipo de cadeiras.
• As variáveis de decisão poderão então ser as
quantidades x1 e x2 produzidas de cada tipo de cadeira.
Restrições
• As restrições, ou condições, traduzem as características
da situação real que se pretende modelizar.
• Em problemas de produção, estão geralmente
associadas à escassez de recursos, a restrições de
oferta (limitações da capacidade produtiva) e a
restrições de procura (níveis mínimos e máximos de
vendas que se estima poder vir a realizar).
• Há ainda a considerar restrições de não negatividade
(relacionadas com o domínio das variáveis de decisão)
e outras restrições que são impostas de modo a criar
formas mais explicitas de apresentação dos resultados.
• No exemplo da empresa , há as restrições impostas
pela utilização das duas máquinas que laboram 12 e 14
horas diariamente:
z 4 0 x1 3 0 x2
s.a
3 x1 4 x2 12
7 x1 2 x2 14
x1 0
x2 0
Resolução Gráfica
A empresa Nova Linha produz artigos de vidro de alta qualidade: janelas e portas, em três secções
de produção:

1. Secção de Serralharia………..: para produzir as estruturas de alumínio.


2. Secção de Carpintaria……..…: para produzir as estruturas de madeira.
3. Secção de Vidro e Montagem: para produzir o vidro e montar as portas e janelas.

Devido à diminuição dos lucros, o gerente decidiu reorganizar a produção, e propõe produzir só 2
produtos que têm uma melhor aceitação entre os clientes. Estes produtos são:

Produto 1. Uma porta de vidro com estrutura de alumínio.


Produto 2. Uma janela grande com estrutura de madeira.

O departamento de Marketing da empresa concluiu que a empresa pode vender tanto de qualquer dos
dois produtos, tendo em conta a capacidade de produção disponível.
Como ambos os produtos partilham a capacidade de produção da secção 3, o gerente solicitou ao
Departamento da produção da empresa a resolução deste problema.

O Departamento formulou o problema, utilizando os seguintes dados:

• a capacidade de produção por minuto de cada secção a ser utilizada na produção destes
produtos.
• a capacidade de produção por minuto de cada secção, a ser utilizada para produzir uma unidade
de cada produto .
• Os lucros unitários para cada produto.
Capacidade de produção
Secção nº Produto 1 Produto 2 Capacidade disponível

1 1 0 4

2 0 2 12

3 3 2 18

Lucro unitário 3 5
z 3 x1 5x2
S.A
x1 4
2 x2 12
3 x1 2 x2 18
x1 0
x2 0
Resolução gráfica
simplex
• O método simplex é um procedimento
matricial para resolução de modelos de
programação linear na forma normal,
• Sabendo que a técnica eficiente da resolução
de equações lineares são iterativas, e como
não existe uma forma resolvente, utiliza-se o
método iterativo que procura examinar o
menor número possível de soluções básicas
admissível.
Simplex – 1º Passo

Introduzir as variáveis de folga: uma para cada


desigualdade
Max Z=3X1+5X2+0X3+0X4+0X5
X1 + X3 =4
X2 +X4 =6
3X1+2X2 +X 5 =18
Simplex – 2 Passo
Montar o quadro para os cálculos, colocando os coeficientes de
todas as variáveis com os seus respectivos sinais, incluindo os
coeficientes da função transformada.

Base X1 X2 X3 X4 X5 b

X3 1 0 1 0 0 4

X4 0 1 0 1 0 6

X5 3 2 0 0 1 18

Z -3 -5 0 0 0 0
Simplex – 3 Passo
• Estabelecer uma solução básica
inicial, usualmente atribuindo valor zero as
variáveis originais, e achando valores positivos
para as variáveis de folga.
• X1=X2=0
• X3=4 ; X4=6 ; X5=18
• Z=0
Simplex – 4 Passo
• Escolha da variável que deve entrar na base.
• Escolher a variável não básica que fornece, na
ultima linha, a maior contribuição para o
aumento da função objectiva, se todas as
variáveis que estão fora da base tiverem
coeficientes nulos ou positivos nesta linha, a
solução actual é óptima. Se não, isto quer dizer
que temos outra solução óptima.
• Neste caso seria X2, pois tem maior contribuição
por unidade na função objectiva.
Simplex – 5 Passo
• Variável que deve sair da base, realizando com o seguinte
procedimento;
• Dividir os elementos da ultima coluna pelos correspondentes
elementos positivos da coluna da variável que vai entrar na
base, caso não haja nenhum elemento positivo nesta coluna o
processo de parar, já que seria ilimitada.
• O menor quociente indica a equação cuja respectiva variável básica
devera ser anulada, transformando numa variável não básica.
1 linha: 4/0=∞
2 linha: 6/1=6
3 linha: 18/2=9
• Neste caso o menor quociente é o da segunda linha, a variável que
deve sair é o X4.
Simplex – 6 Passo
• Transformação da matriz
Base X1 X2 X3 X4 X5 b ELEMENTO PIVOT
X3 1 0 1 0 0 4 A1
X4 0 1 0 1 0 6 B1
X5 3 2 0 0 1 18 C1
Z -3 -5 0 0 0 0 D1

Base X1 X2 X3 X4 X5 b
ELEMENTO PIVOT
X3 1 0 1 0 0 4
A2=A1
X2 0 1 0 1 0 6
B2=B1
X5 3 0 0 -2 1 6
C2=C1-2B2
Z -3 -0 0 5 0 30
D2=D1+5B2

Nova Solução
Variáveis não básica [ X1=X4=0]
Variável básica [X3=4; X2=6 ; X5=6
Z=30
2ª iteração
Passo 4 ; a nova variável que entra na base será
X1, por ser a única que tem coeficiente
negativo na ultima linha.
Passo 5; a variável que deve sair da base:
1ª Linha 4/1=4
2ª Linha 4/0=∞
3ª Linha 6/3=2 X5 a variável que deve sair
da base
Base X1 X2 X3 X4 X5 b

X3 0 0 1 2/3 -1/3 2
A3=A2-C3
X2 0 1 0 1 0 6 B3=B2
X5 1 0 0 -2/3 1/3 2 C3=C2/3
Z 0 0 0 3 1 36 D3=D2+3C3

Nova Solução
Variáveis não básica [ X5=X4=0]
Variável básica [X3=2; X2=6 ; X1=2
Z=36
Exemplo 2
Numa firma fabrica dois produtos X1 e X2 em três
maquinas M1, M2 e M3. X1 é processado nas
maquinas M1 e M2 enquanto X2 intervêm todas as
maquinas. Cada maquina tem o tempo de elaboração
de 40 horas semanais. Quais as quantidades de X1 e X2
semanais a produzir que maximizem o lucro obtido.
Os tempos de funcionamentos e os lucros obtidos são os
seguintes.

produto M1 M2 M3 Lucro
X1 0,25 0,40 0 2
X2 0,50 0,20 0,80 3
SOLUÇÃO GRAFICA
Definição das
variáveis – X1 e X2
Função objectiva –
Max Z=2X1+3X2
Restrições –
0,25X1+0,50X2≤40
0,40X1+0,20X2≤40
0,80X2≤40
X1>0, X2>0
SIMPLEX - CALCULAR
X1 X2 X3 X4 X5 BASE ELEMENTO PIVOT

A1 X3 0,25 0,50 1 0 0 40 40/0,50=80


B1 X4 0,40 0,20 0 1 0 40 40/0,20=200
C1 X5 0 0,80 0 0 1 40 40/0,80=50
D1 Z -2 -3 0 0 0 0

ELEMENTO PIVOT

X1 X2 X3 X4 X5 BASE
A2=A1-0,50C2 X3 0,25 0 1 0 -0,625 15 15/0,25=60
B2=B1-0,20C2 X4 0,40 0 0 1 -0,25 30 30/0,40=75
C2=C1/0,80 X2 0 1 0 0 1,25 50 50/0=∞
D2=D1-3C2 Z -2 0 0 0 3,75 150
SIMPLEX - CALCULAR
ELEMENTO PIVOT
X1 X2 X3 X4 X5 BASE
A3=A2/0,25 X1 1 0 4 0 -2,5 60 60/-2,5=-24
B3=B2-0,40 A3 X4 0 0 -1,60 1 0,75 6 6/0,75=8
C3=C2 X2 0 1 0 0 1,25 50
50/1,25=40
D3=D2+2 A3 Z 0 0 8 0 -1,25 270

X1 X2 X3 X4 X5 BASE
A4=A3+2,5B3
X1 1 0 -1,33 3,33 0 80
B4=B3/0,75 X4 0 0 -2,13 1,33 1 8
C4=C3-1,25B3 X2 0 1 2,67 -1,67 0 40
D4=D3+1,25B3 Z 0 0 5,33 -1,67 0 280
SIMPLEX – SOLUÇÃO OPTIMA
• Produzir 80 unidades por semana de X1 e 40
unidade por semana de X2
• O lucro semanal obtido é de 280 um
Conceito de dualidade
• Todo o problema de programação linear, a que chamaremos primal,
traz consigo um segundo problema, chamado dual, sendo ambos
completamente inter-relacionados.
• Seja o seguinte de programação linear, em forma literal;
P ro ble ma primal
n
max Z c j .x j
j 1
n
s.a aij x j bi
j 1

para i 1 ,..., m, c o m x j 0 para j 1 ,...n

P ro ble ma Dual
m
min Z b i yi
i 1
m
s.a aij . yi c j
i 1

para j 1 ,..., n, c o m y i 0 para i 1 , ..., m.


O problema dual, para modelos em que as restrições são
desigualdades do tipo (≤), é constituído a partir do primal da
seguinte maneira:
a) Cada restrição, em um problema, corresponde a uma variável no
outro.
b) Os elementos do lado direito das restrições, em um problema, são
coeficientes da função objectivo do outro problema.
c) Se o objectivo de um problema é maximizar, do outro será
minimizar, e vice versa.
d) O problema de maximização tem restrições com o sentido (≤) e o
problema de minimização tem restrições com sentido (≥).
e) As variáveis de ambos os problemas são não negativas.
max Z c1 x1 c2 x2 c3 x3
s.a a11 x1 a12 x2 a13 x3 b1
a 21 x1 a22 x2 a 23 x3 b2
a31 x1 a32 x2 a33 x3 b3

min Z b1 y1 b2 y 2 b3 y3
s.a a11 y1 a 21 y 2 a31 y3 c1
a12 y1 a22 y 2 a32 y3 c2
a13 y1 a 23 y 2 a33 y3 c3
Exemplo dualidade
• Seja dado o seguinte problema primal
max Z x1 2 x2
s.a x1 5 x2 18
2 x1 x2 15
5 x1 2 x2 20
x2 8
co m x 1 e x 2 0
o pro ble ma dual sera;
minZ 1 8 y1 1 5 y2 2 0 y3 8 y4
s.a y1 2 y2 5 y3 1
5 y1 y2 2 y3 y4 2
co m y1 , y 2 , y3 e y 4 0
Jone Heitor

obrigado

Você também pode gostar