Professional Documents
Culture Documents
Programao linear
Programa
o Linear
2002/2003
Programao linear
Programao linear
NDICE
1. Introduo Programao Linear .................................................................................4
1.1 Origens e evoluo...................................................................................................4
1.2 Introduo e primeiros conceitos..............................................................................5
1.3 O que a Programao Linear ?...............................................................................6
1.4 Onde se aplica a Programao Linear ?....................................................................7
1.5 Conceitos fundamentais da Programao Linear ....................................................8
2. Formulao de problemas de Programao Linear.....................................................10
2.1 O modelo................................................................................................................10
2.2 Hipteses do modelo de Programao Linear........................................................12
2.3 Formulao dos vrios tipos de problemas de Programao Linear......................13
2.4 Representao grfica de problemas de programao linear..................................14
2.4.1 Solues de um problema de P.L...................................................................14
2.5 Introduo aos exemplos a estudar.........................................................................15
2.5.1 Exemplo de maximizao...............................................................................15
A) Formulao matemtica do problema.................................................17
B) Representao grfica do problema....................................................17
2.5.2 Exemplo de minimizao....... .......................................................................19
A) Formulao matemtica do problema.................................................19
B) Representao grfica do problema...................................................20
2.5.3 Casos particulares...........................................................................................21
3. O Mtodo Simplex.......................................................................................................25
3.1 Introduo...............................................................................................................25
3.2 Alguns conceitos fundamentais no Mtodo Simplex.............................................25
3.3 Algoritmo do Mtodo Simplex...............................................................................27
3.4 Exemplos de aplicao do Mtodo Simplex...........................................................29
4. Concluso....................................................................................................................35
Bibliografia
Programao linear
ORIGENS E EVOLUO
Desde a revoluo industrial o mundo tem presenciado um grande crescimento
Programao linear
Neste contexto, a P.L. tem por objecto de estudo a actividade humana dirigida,
na qual se pretende satisfazer da melhor forma determinado objectivo, em que existem
limitaes (restries) ao funcionamento dessa actividade. Est-se na presena de um
problema de P.M. quando o objectivo das restries podem ser traduzidas por relaes
funcionais. Se estas forem lineares constituem um problema de P.L..
Neste trabalho, procede-se apresentao de uma subclasse especial de
problemas de P.M. designada por P.L.. Esta designao advm do facto de que, quer as
condies, quer o objectivo deste tipo de problemas, poderem ser descritos atravs de
relaes lineares, nomeadamente equaes e inequaes lineares.
Programao linear
Programao linear
A P.L. uma tcnica de planeamento que se tem vindo a constituir como uma
das mais poderosas em quase todo o ramo da actividade humana. um mtodo de
maximizar (ou minimizar) uma funo linear (designada funo objectivo), definida
num dado conjunto convexo, tendo em conta que as variveis esto sujeitas a restries
lineares. Estas restries podem ser do tipo , = ou e as variveis so reais no
negativas.
Programao linear
2) Problemas de Composio
Neste tipo de problema destaca-se o seguinte exemplo genrico: conhecendo os
contedos calricos e vitamnicos de diversos alimentos, bem como os seus
preos, pretende-se optimizar a composio da dieta a adoptar, de modo a
minimizar o seu custo e a satisfazer nveis mnimos de calorias e vitaminas.
Outras aplicaes:
- composio de medicamentos;
- blindagem de ligas metlicas e combustveis;
- raes de animais e adubos;
- gelados e produtos alimentares.
Funo objectivo (funo econmica ou funo critrio) uma funo linear que
vamos optimizar, maximizando ou minimizando;
Programao linear
Programao linear
2. FORMULAO
DE
PROBLEMAS
DE
PROGRAMAO LINEAR
2.1 O MODELO
Os problemas de Programao Linear so problemas de maximizao ou de
minimizao de funes lineares (funo objectivo), num determinado domnio,
normalmente definido por um conjunto de restries nas variveis. Estes problemas so
representados matematicamente por modelos que podem ser apresentados na forma
padro ou na forma cannica (j definidas anteriormente).
Algebricamente tem-se:
max (min) Z = c1x1 + + cnxn
sujeito a
a11x1 + a12x2 + + a1jxj + + a1nxn
{,=,}
b1
{,=,}
b2
{,=,}
bi
...
ai1x1 + ai2x2 + + ainxn + + ainxn
...
am1x1 + am2x2 + + amjxj + + amnxn
{,=,}
bm
com :
x1 0 , x2 0 , ... , xn 0
i = 1 , ... , m
j = 1 , ... , n
xj incgnitas, so as variveis de deciso
aij coeficientes
bi termos independentes
cj coeficientes da funo objectivo
10
Programao linear
com xn+1 0
11
Programao linear
5. Qualquer varivel livre (no restringida pela condio de no negatividade) xj, pode
ser substituda por um par de variveis no negativas x j 0 e xj 0, fazendo
x j = xj
12
2.3
FORMULAO
Programao linear
DOS
VRIOS
TIPOS
DE
A- Transporte
cx
minij
ij ij
com
ai
ij
ij
= bj
unidades
armazns receptores
xij 0
sendo i = 1, ..., m;
j = 1, ..., n;
ai a capacidade de fornecimento na unidade i e bj a quantidade requerida no armazm j,
cij o custo de transporte de uma unidade de produto da
B- Composio
min
com
cx
i i
ax
i i
Nvel calrico
bx
Nvel calrico
i i
xi 0
sendo ai e bi o contedo calrico e vitamnico unitrio de cada alimento i,
respectivamente, ci o custo unitrio de i, e u e v os nveis mnimos exigidos.
13
Programao linear
C- Produo
max
cx
j j
com
j
ax
ij j
bi
Recursos
xj 0
sendo i = 1, ..., m; j = 1, ..., n;
cj o lucro obtido por cada unidade do produto j,
aij a quantidade de recurso i gasta na produo de cada unidade do produto j,
bi a quantidade de recurso disponvel.
Programao linear
15
Programao linear
Produto 1
Produto 2
Capacidade
disponvel
1
2
3
1
0
3
0
2
2
4
12
18
Lucros
unitrios (em
euros)
Quadro 2.5.1
16
Programao linear
Condies de no negatividade:
x 0, y 0 os pontos (x,y) esto situados no 1 Quadrante;
Restries:
17
Programao linear
18
Programao linear
Rao
Granulado
Farinha
Ingredientes nutritivos
Quantidade mnima
requerida
Carbohidratos
20
50
200
Vitaminas
50
10
150
Protenas
30
30
210
Custos (euros/Kg)
0.05
0.03
Z = 0.05x + 0.03y
Sujeito a
19
Programao linear
Condies de no negatividade:
Restries:
O resultado final encontra-se na Fig. 2.5.2.1 onde a regio sombreado, tal como
no exemplo anterior, indica o conjunto dos pontos que satisfazem todas as restries.
20
Programao linear
21
Programao linear
enunciado
do
problema
de
maximizao
estudado
22
Programao linear
Verificamos que , traando uma qualquer recta de nvel do plano definido pela
f.o. , aquela pode ser deslocada paralelamente a si prpria, no sentido do crescimento de
Z, e conter ainda pontos do conjunto das solues admissveis.
problema de P. L. possui mais do que uma soluo ptima diz-se que se est em
presena de solues ptimas alternativas; isto significa que o lucro mximo pode ser
obtido atravs de vrias (infinitas) combinaes dos recursos.
Se um problema de P.L. tem
Consideremos o enunciado do problema de maximizao considerado, mudando o lucro
unitrio do produto 2 de 5 euros para 2 euros, a funo objectivo agora a recta
Z = 3x + 2y (a f.o. tem o mesmo gradiente da recta da 3 restrio 3x+ 2y = 18).
A formulao matemtica do problema agora,
Maximizar Z = 3x + 2y,
Sujeito a
x4
y6
3x + 2y 18
x 0, y 0
cuja resoluo grfica :
23
Programao linear
Ponto extremo de um conjunto convexo K um ponto que no pertence ao segmento de recta a unir dois pontos quaiquer de K.
24
Programao linear
3. O MTODO SIMPLEX
3.1 INTRODUO
Como j foi referido, o Mtodo Simplex foi proposto por Dantzig. O primeiro e
mais importante passo na sua descoberta foi a concluso de que a regio admissvel o
que se chama um poltopo (poliedro convexo limitado), e donde concluiu que o ponto
ptimo tem que estar sobre algum dos vrtices desse conjunto. Alm disso, Dantzig
argumentou que a funo objectivo tem geralmente valores diferentes para cada vrtice
escolhido arbitrariamente, no qual a funo objectivo tem um determinado valor,
passando de vrtice para vrtice, na procura do ponto ptimo.
Inicialmente,
Dantzig
pensou
que
tal
procedimento
poderia
ser
irremediavelmente ineficaz, ou seja , divagar durante muito tempo ao longo das arestas,
de vrtice para vrtice, antes de alcanar o vrtice em que a funo objectivo atinge o
valor ptimo. Mas estava enganado, pois, na realidade veio a descobrir que, em quase
todos os casos, encontrar a soluo somente exigia tantos movimentos quantas as
restries do problema.
3.2
ALGUNS
CONCEITOS
FUNDAMENTAIS
NO
MTODO SIMPLEX
A introduo destes conceitos fundamental para a apresentao do mtodo simplex.
Ao considerarmos um problema de programao linear, ele ter sempre a seguinte
forma padro:
Optimizar Z = c1x1 + c2x2 + ... +cnxn
(1)
(2)
(3)
25
Programao linear
onde:
m = nmero de restries funcionais;
n = nmero de variveis de restrio.
Supe-se ainda que os termos independentes so no negativos: b i 0
(i = 1, 2, ..., m). Caso contrrio pode sempre multiplicar-se por (-1) toda a equao.
O problema pode ser escrito em notao matricial do seguinte modo:
Opt Z = CTX
(1)
Suj a AX = B
(2)
X0
(3)
em que:
X o vector-coluna das incgnitas;
CT o vector-linha dos coeficientes correspondentes;
A a matriz dos coeficientes das incgnitas das restries;
B o vector-coluna dos membros direitos das restries.
Suponha-se que a caracterstica (nmero mximo de colunas linearmente
independentes) da matriz A igual a m, ou seja, C(A) = m. Isto significa que existe uma
submatriz de A quadrada de ordem m (Bm
x m
submatriz permite efectuar uma classificao das variveis em: bsicas (as
correspondentes s colunas daquela submatriz) e no bsicas (as restantes n-m
variveis).
Um sistema nas condies (2) um sistema indeterminado de grau n-m, em que m
variveis podem ser escritas em termos das restantes n-m, e tem, por consequncia, uma
infinidade de solues (correspondente infinidade de valores que arbitrariamente
podem ser atribudos s n-m variveis).
Suponha-se ento que X = (x1, x2, , xm, xm+1, , xn) uma soluo desse sistema.
Se uma submatriz Bm x m da matriz A do sistema considerado no singular, isto , o
seu determinante nulo, ento a submatriz Bm x m designa-se por base. Sem perda de
generalidade, suponha-se que a base composta pelas m ltimas colunas, isto ,
B = {P1, P2, , Pm}.
26
Programao linear
27
Programao linear
28
Programao linear
x2
a12
...
...
xm
a1m
...
...
xn
a1n
am2
c2
...
...
amm
cm
...
...
amn
cn
bi
b1
...
bm
0
Quadro 3.3.1
1 Problema
Retomemos o problema de maximizao descrito em 2.5.1
Resoluo usando o mtodo simplex:
x = x1 = n. de unidades do Produto 1
y = x2 = n. de unidades do Produto 2
29
Programao linear
x1 4
2x2 12
3x1 + 2x2 18
x3
x4
x5
Z
x1
1
0
3
-3
x2
0
2*
2
-5
x3
1
0
0
0
x4
0
1
0
0
x5
0
0
1
0
b
4
12
18
0
Quadro 3.4.1
A primeira soluo bsica admissvel (x1, x2, x3, x4, x5) = (0, 0, 4, 12, 8); onde
x1, x2 so variveis no bsicas e x3, x4, x5 so as variveis bsicas. Verificamos que esta
soluo no ptima, visto que existem custos reduzidos negativos: -3 e -5.
A varivel a entrar na base x 2, porque entre as variveis no bsicas com custo
reduzido negativo a que tem menor valor.
A varivel de sada x4, porque o min 12/2, 18/2 corresponde linha definida
por esta varivel bsica.
O pivot neste caso 2 (assinalado com um asterisco).
A actualizao do quadro simplex feita utilizando as seguintes operaes
elementares:
L1 L1
L2 1/2L2
L3 L3 L2
L4 L4 + 5/2L2
x3
x2
x1
1
0
x2
0
1
x3
1
0
x4
0
1/2
x5
0
0
b
4
6
30
3*
-3
Programao linear
0
0
0
0
-1
5/2
1
0
6
30
Quadro 3.4.2
Obtemos uma nova soluo bsica admissvel (x 1, x2, x3, x4, x5) = (0, 6, 4, 0, 6);
esta soluo ainda no ptima pois existe um custo reduzido negativo.
Repare-se que para esta soluo a funo objectivo 30.
A varivel a entrar na nova base x 1, porque entre as duas variveis no bsicas
a nica que tem um custo reduzido negativo.
A varivel de sada x5, porque o min {4/1,6/3} corresponde linha definida por
x5.
O novo pivot 3 (assinalado com um asterisco).
A nova actualizao do quadro simplex feita utilizando as seguintes operaes
elementares:
L1 L1 1/3L3
L2 L2
L3 1/3L3
L4 L4 + L3
x3
x2
x1
Z
x1
0
0
1
0
x2
0
1
0
0
x3
1
0
0
0
x4
1/3
1/2
-1/3
3/2
x5
-1/3
0
1/3
1
b
2
6
2
36
Quadro 3.4.3
A nova soluo bsica admissvel (x1, x2, x3, x4, x5) = (2, 6, 2, 0, 0) ; uma vez
que neste ltimo quadro no existem custos reduzidos negativos, esta soluo ptima.
Sendo o valor mximo da funo objectivo 36.
2 Problema
Considere-se o seguinte problema:
Uma empresa fabrica trs tipos de kits electrnicos (I, II, III). Estes tipos de kits
so processados em trs seces distintas (A, B, C).
31
Programao linear
na C;
x4
x5
x6
x1
2
2*
1
x2
1
1
3
x3
1
1
2
x4
0
0
0
x5
0
1
0
x6
0
0
1
b
12
9
16
32
-8
-8
Programao linear
-1
Quadro 3.4.4
A primeira soluo bsica admissvel (x1, x2, x3, x4, x5, x6) = (0, 0, 0, 12, 9, 16);
onde x1, x2, x3 so variveis no bsicas e x4, x5, x6 so as variveis bsicas. Verificamos
que esta soluo no ptima, visto que existem custos reduzidos negativos: -8 e -1.
A varivel a entrar na base x 1 porque, entre as variveis no bsicas com custo
reduzido negativo, a que tem menor valor.
A varivel de sada x5, porque o min 12/2, 9/2, 16/1 corresponde linha
definida por esta varivel bsica.
O pivot neste caso 2 (assinalado com um asterisco).
A actualizao do quadro simplex feita utilizando as seguintes operaes
elementares:
L1 L1 L2
L2 1/2L2
L3 L3 1/2L2
L4 L4 + 4L
x4
x1
x6
Z
x1
0
1
0
0
x2
1*
1/2
5/2
-4
x3
0
1/2
3/2
3
x4
1
0
0
0
x5
-1
1/2
-1/2
4
x6
0
0
1
0
b
3
9/2
23/2
36
Quadro 3.4.5
Obtemos uma nova soluo bsica admissvel (x1, x2, x3, x4, x5, x6) = (9/2, 0, 0, 3,
0, 23/2); esta soluo ainda no ptima pois existe um custo reduzido negativo.
Repare-se que para esta soluo a funo objectivo 36.
A varivel a entrar na nova base x 2, porque entre as duas variveis no bsicas
a nica que tem um custo reduzido negativo.
A varivel de sada x4, porque o min {3, 9, 23/5} corresponde linha definida
por x4.
O novo pivot 1 (assinalado com um asterisco).
A nova actualizao do quadro simplex feita utilizando as seguintes operaes
elementares:
33
Programao linear
L1 L1
L2 L2 1/2L1
L3 L3 5/2L1
L4 L4 + 4L1
x1
0
1
0
0
x2
x1
x6
Z
x2
1
0
0
0
x3
0
1/2
3/2
3
x4
1
-1/2
-5/2
4
x5
-1
1/4
2
0
x6
0
0
1
0
b
3
3
4
48
Quadro 3.4.6
A nova soluo bsica admissvel (x1, x2, x3, x4, x5, x6) = (3, 3, 0, 0, 0, 4); uma vez
que neste ltimo quadro no existem custos reduzidos negativos, esta soluo ptima.
Sendo o valor mximo da funo objectivo 48.
Assim, conclumos que se devem produzir 3 unidades de kits do tipo I e do tipo II e
nenhuma do tipo III para que o lucro seja mximo (48 euros).
Este exemplo foi resolvido usando o algoritmo primal do mtodo simplex. A
resoluo do mtodo simplex depende do tipo de restries que estamos a considerar e
neste trabalho abordmos apenas restries do tipo ; se as restries forem do tipo
ou do tipo = existem outras formas de resoluo. Por exemplo, no caso da igualdade
existem dois processo de resoluo: o dos grandes Ms e o das duas fases. Existem ainda
outros algoritmos: primal-dual e dual. No entanto, de destacar que o mtodo simplex
nico.
4. CONCLUSO
Terminado este trabalho e aps a pesquisa realizada para o mesmo, verifica-se
que de facto a Programao Linear uma cincia com uma vasta aplicao em
problemas reais e do quotidiano e, por isso mesmo, muito til.
Tentou-se corresponder ao pretendido, apresentando os contedos tericos do
tema em questo, seguidos de exemplos de situaes reais, em que a interpretao
grfica toma principal destaque. Dada a complexidade inerente ao Mtodo Simplex, no
34
Programao linear
foi possvel abord-lo em toda a sua extenso; contudo, procurou-se elucidar a sua
grande utilidade na resoluo de problemas P.L. com trs ou mais variveis e/ou com
muitas restries.
No entanto, muito mais se poderia falar, pois a P.L. uma cincia bastante vasta
e que actualmente abrange muitas e variadas reas de actividades.
Assim, importa realar o seu contributo na rea da Matemtica e, em particular,
no mbito do ensino secundrio.
BIBLIOGRAFIA
35
Programao linear
RAMALHETE,
Manuel;
GUERREIRO,
Jorge;
MAGALHES,
Alpio
Sites da internet
www.terravista.pt
www.sapo.pt
www.google.pt
www.clix.pt
www.yahoo.com
36