2- NOÇÕES DE CONVEXIDADE E FORMULAÇÃO MATEMÁTICA ...
2- NOÇÕES DE CONVEXIDADE E FORMULAÇÃO MATEMÁTICA ...
2- NOÇÕES DE CONVEXIDADE E FORMULAÇÃO MATEMÁTICA ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
2- <strong>NOÇÕES</strong> <strong>DE</strong> CONVEXIDA<strong>DE</strong> E <strong>FORMULAÇÃO</strong> <strong>MATEMÁTICA</strong> <strong>DE</strong><br />
PROBLEMAS <strong>DE</strong> PROGRAMAÇÃO LINEAR<br />
2.1 – Noções de Convexidade<br />
2.1.1 - Combinação Convexa de pontos<br />
Considere C um conjunto contendo os pontos x 1 e x 2 e α ∈ [0,1]. Diz-se que o<br />
ponto b = αx 1 + (1 -α)x 2 é o resultado de uma combinação convexa de x 1 e x 2 . Além<br />
disso, se fizer-se α + (1- α) terá como resultado o número 1. Pode-se estender esta<br />
definição para um conjunto de pontos:,<br />
Diz que o ponto<br />
x 1 , x 2 ,...,x n . Então,<br />
α1 + α2 + ........ + αn = α i<br />
Teorema 2.1.1:<br />
b x x nx i n<br />
n<br />
= α1 + α + + α<br />
αi<br />
≥ =<br />
1<br />
2 2<br />
....<br />
é uma combinação convexa dos pontos<br />
0 ( 1, 2,...,<br />
)<br />
n<br />
i=<br />
1<br />
= 1<br />
Sejam os pontos u 1 e u 2 , pertencentes ao ℜ n , e u 3 um ponto qualquer entre u 1 e u 2 .<br />
Para algum 0 ≤ α ≤ 1 tem-se:<br />
α ( u 1 - u 2 ) = u 3 - u 2 .<br />
u 3 =α u 1 + (1-α ) u 2 (1).<br />
Como cada coeficiente de (1) é maior ou igual a 0, e a soma deles é igual a 1,<br />
então u 3 é uma combinação convexa de u 1 e u 2 .<br />
2.1.2- Conjuntos Convexos<br />
Um subconjunto C∈ R n é chamado convexo, se e somente se, para quaisquer<br />
pontos u 1 e u 2 pertencentes a C qualquer combinação convexa<br />
b = α 1 u 1 +α 2 u 2<br />
também pertencer a C. Em outras palavras, se C é convexo, então<br />
1<br />
u ∈C<br />
2<br />
u ∈C<br />
1 2<br />
αu + ( 1 − α)<br />
u ∈C<br />
(0 ≤ α ≤ 1).<br />
Portanto, um conjunto C é considerado convexo se todos os pontos do segmento<br />
de uma reta que une dois pontos de C também pertencem a C.<br />
18
2.1.3- Ponto Extremo (ou Vértice)<br />
Seja C um conjunto convexo. Diz-se que u∈ C é um ponto extremo de C se<br />
não for possível expressá-lo como uma combinação convexa de quaisquer outros dois<br />
pontos distintos pertencentes ao conjunto C.<br />
2.1.4- Intersecção de Conjuntos Convexos<br />
Sejam A e B dois conjuntos convexos. Seja S o conjunto intersecção, ou seja,<br />
S = A ∩ B. Se dois pontos p e q pertencem a S, então o segmento pq pertence a S.<br />
Portanto, todos os pontos pertencentes a S satisfazem a condição de<br />
convexidade. É imediato concluir que a intersecção de um número finito de conjuntos<br />
convexos é um conjunto convexo.<br />
2.2 – Formulação Matemática de P.P.L’S em R 2<br />
A formulação matemática para os Problemas de Programação Linear é uma<br />
idealização da realidade, pois emprega símbolos matemáticos para representar as<br />
variáveis do sistema real. Essas variáveis são relacionadas por equações lineares que<br />
expressam as restrições do problema através de sistemas lineares e da função<br />
matemática a ser otimizada, que também é linear.<br />
A solução consiste em encontrar valores adequados das variáveis de decisão que<br />
otimizem o desenvolvimento do sistema, segundo o critério desejado (maximizar ou<br />
minimizar).<br />
A formulação matemática consiste em:<br />
i) Identificar as variáveis de decisão e determinar a grandeza a ser otimizada,<br />
expressando-a como uma função matemática (função objetivo).<br />
ii) Identificar todas as exigências, restrições e limitações estipuladas, expressando-as<br />
matematicamente (restrições).<br />
iii) Expressar todas as condições implícitas. Tais condições não são estipuladas<br />
explicitamente no problema relativo à situação física sendo assim, modeladas.<br />
Exemplo 2.1:<br />
Uma pessoa em dieta necessita ingerir pelo menos:<br />
- 20 unidades de vitamina A; ( Vitamina A ≥ 20)<br />
19
- 10 unidades de vitamina B; ( Vitamina B ≥ 10)<br />
- 2 unidades de vitamina C. ( Vitamina C ≥ 2)<br />
Ela deve conseguir estas vitaminas a partir de dois tipos diferentes de alimentos<br />
A1 e A2. A quantidade de vitaminas que esses produtos contém por unidade e o preço de<br />
cada um estão na tabela:<br />
Vitamina A Vitamina B Vitamina C Preço Unitário<br />
Alimento A1 4 1 1 30 u.m.<br />
Alimento A2 1 2 0 20 u.m.<br />
Qual a programação de compras dos alimentos A1 e A2 que essa pessoa deve<br />
fazer para cumprir sua dieta a menor custo possível?<br />
Resolução:<br />
Variáveis de decisão:<br />
x1: quantidade de alimento A1 a ser comprado.<br />
x2: quantidade de alimento A2 a ser comprado.<br />
Função objetivo:<br />
z = 30x1 + 20x2<br />
Conjunto de restrições:<br />
Problema:<br />
4x1 + x2 ≥ 20<br />
x1 + 2x2 ≥ 10<br />
x1 ≥ 2<br />
x2 ≥ 0<br />
min z = 30x1 + 20x2<br />
s.a 4x1 + x2 ≥ 20<br />
Exemplo 2.2:<br />
x1 + 2x2 ≥ 10<br />
x1 ≥ 2<br />
x2 ≥ 0 .<br />
Um fabricante de artigos de plásticos possui um estoque de 1200 caixas de<br />
envôlucos transparentes em uma de suas fábricas e outras 1000 caixas em uma segunda<br />
20
fábrica. O fabricante recebeu pedidos deste produto provenientes de três diferentes<br />
varejistas nas quantidades de 1000, 700 e 500 caixas respectivamente. Os custos<br />
unitários de expedição desde as fábricas até os varejistas são os seguintes:<br />
Varejista 1 Varejista 2 Varejista 3<br />
Fábrica 1 14 13 11<br />
Fábrica 2 13 13 12<br />
Determine o programa de expedição que atenda todas as demandas a partir do<br />
estoque disponível a um custo mínimo.<br />
Resolução:<br />
Variáveis de decisão:<br />
xij : número de caixas a serem expedidas da fábrica i para o varejista j.<br />
i = 1, 2 , j = 1, 2, 3.<br />
Função objetivo:<br />
z = 14 x11 + 13 x12 + 11 x13 + 13 x21 + 13 x22 + 12 x23<br />
Conjunto de restrições:<br />
Problema:<br />
x11 + x12 + x13 = 1200<br />
x21 + x22 + x23 = 1000<br />
x11 + x21 = 1000<br />
x12 + x22 = 700<br />
x13 + x23 = 500<br />
xij ≥ 0 , i = 1, 2 ; j = 1,2,3.<br />
min z = 14 x11 + 13 x12 + 11 x13 + 13 x21 + 13 x22 + 12 x23<br />
s.a. x11 + x12 + x13 = 1200<br />
21<br />
x21 + x22 + x23 = 1000<br />
x11 + x21 = 1000<br />
xij ≥ 0 , i = 1, 2 ; j = 1,2,3.<br />
x12 + x22 = 700<br />
x13 + x23 = 500
Exemplo 2.3:<br />
Uma pequena indústria produz artigos A1 e A2 que são vendidos a 200 u.m. e<br />
300 u.m., respectivamente. Na sua produção são utilizados três tipos de matérias-<br />
primas, P1, P2 e P3, que são gastas da seguinte forma:<br />
- 2 unidades de P1 para fabricar 1 unidade de A1;<br />
- 4 unidades de P2 para fabricar 1 unidade de A1;<br />
- 1 unidade de P1 para fabricar 1 unidade de A2;<br />
- 1 unidade de P3 para fabricar 1 unidade de A2.<br />
Por razões econômicas, as matérias-primas P1, P2 e P3, estão disponíveis no<br />
máximo em 20, 32 e 10 unidades, respectivamente.<br />
O dono da empresa deseja saber as quantidades dos produtos A1 e A2 que devem<br />
ser produzidos para que a receita bruta seja a menor possível.<br />
Resolução:<br />
Variáveis de decisão:<br />
x1: quantidade do produto A1 a ser produzida;<br />
x2: quantidade do produto A2 a ser produzida.<br />
Função objetivo:<br />
z = 200 x1 + 300 x2<br />
Conjunto de restrições:<br />
Problema:<br />
2 x1 + x2 ≤ 20<br />
4 x1 ≤ 32<br />
x2 ≤ 10<br />
x1 , x2 ≥ 0<br />
min z = 200 x1 + 300 x2<br />
2 x1 + x2 ≤ 20<br />
4 x1 ≤ 32<br />
x2 ≤ 10<br />
x1 , x2 ≥ 0.<br />
22
2.3- Resolução Gráfica dos Problemas de Programação Linear no ℜ 2<br />
A resolução de Problemas de Programação Linear no ℜ 2 , pode ser determinada<br />
graficamente se o problema tem:<br />
- Solução única;<br />
- Múltiplas soluções;<br />
- Solução ilimitada;<br />
- Infactível (não tem solução).<br />
Para isso determina-se inicialmente a região de factiblidade do problema, ou<br />
seja, a região determinada pelas restrições. A seguir, utiliza-se as curvas de nível e o<br />
vetor gradiente da função objetivo para determinar o sentido em que a função cresçe<br />
ou diminui mais rapidamente.<br />
Veja alguns exemplos:<br />
Exemplo 2.3.1 (Solução única):<br />
23<br />
x2 -x1+x2 ≤ 1<br />
Curva de Nível<br />
max z = 2 x1 + x2 Solução ótima<br />
s.a -x1 + x2 ≤ 1 x2 ≤ 2<br />
x1 ≤ 3<br />
x2 ≤ 2<br />
x1 e x2 ≥ 0 x1 ≤ 3 x1<br />
Exemplo 2.3.2 (Múltiplas soluções):<br />
max z = x1 + x2<br />
s.a x1 ≤ 3<br />
vetor gradiente<br />
x2 ≤ 4 x2≤4<br />
2x1 + 2x2 ≤ 9 2x1 + 2x2≤9<br />
x1 e x2 ≥ 0<br />
x2 Infinitas Soluções<br />
x* = α x 1 + (1 - α) x 2 (0 ≤ α ≤ 1). x1≤3<br />
x1
Exemplo 2.3.3 (Solução Ilimitada): x2<br />
max z = x1 + 2 x2 x1+2x2 ≥ 10 x1 ≥ 2<br />
4 x1 + x2 ≥ 20<br />
x1 + 2 x2 ≥ 10 soluções ilimitadas<br />
x1 ≥ 2<br />
x1 e x2 ≥ 0<br />
24<br />
4x1+x2 ≥ 20 x1<br />
Este problema não possui solução ótima finita, pois o valor da função pode<br />
crescer indefinidamente dentro da região de factibilidade. Dizemos que este é um<br />
problema ilimitado.<br />
Exemplo 2.3.4 (Infactível):<br />
min. z = x1 + x2 -2x1+x2 ≥ 20<br />
s.a -2 x1+ x2 ≥ 20<br />
x1 - x2 ≥ 2 x1-x2 ≥ 2<br />
x1 , x2 ≥ 0<br />
Neste problema, o conjunto de pontos viáveis é um conjunto vazio, pois não há<br />
região no plano que satisfaça as quatro restrições. Diz-se que este é um problema<br />
inviável ou infactível.<br />
2.4– Formulação Geral de um Problema de Programação Linear<br />
Nessa seção, será definida um Problema de Programação Linear (P.P.L.) em sua<br />
forma geral, padrão e canônica, necessárias para a definição de um método para<br />
resolução desses problemas a ser visto no capítulo 3.<br />
.<br />
x2<br />
x1
2.4.1- Diferentes formas de um Problema de Programação Linear<br />
2.4.1.1 Forma Geral<br />
Diz-se que um Problema de Programação Linear está na forma geral se este se<br />
encontrar na seguinte forma:<br />
Max (ou Min) z = c1x1 + c2x2 +…+ cnxn ;<br />
s.a.<br />
a11x1 + a12x2 + ... + a1nxn ≤ b1<br />
.<br />
.<br />
.<br />
ap1x1 + ap2x2 + ... + apnxn ≤ bp<br />
a(p+1)1x1 + a(p+1)2x2 + ... + a(p+1)nxn ≥ b(p+1)<br />
.<br />
.<br />
.<br />
aq1x1 + aq2x2 + ... + aqnxn ≥ bq<br />
a(q+1)1x1 + a(q+1)2x2 + ... + a(q+1)nxn = b(q+1)<br />
.<br />
.<br />
.<br />
am1x1 + am2x2 + ... + amnxn = bm<br />
x1, ..., xp’ ≥ 0<br />
x(p’+1), , xq’ ≤ 0<br />
xq’, ..., xn : irrestrita, onde 1 ≤ p ≤ m , 1 ≤ p’ ≤ q’ ≤ n, 1≤q≤m<br />
Exemplo 2.4.1:<br />
max z = 5x1+3x2+x3+2x4-4x5<br />
s.a.: x1+5x2-3x3 - x4+7x5 ≤ 10<br />
3x1-2x2+5x3+ x4+4x5 ≥ 15<br />
x1+7x2 - x3+2x4+3x5 ≥ 20<br />
5x1+2x2+2x3+3x4- x5 = 8<br />
x1≥0, x2≥0, x3≤0, x4 : irrestrita, x5 : irrestrita<br />
2.4.1.2- Forma Canônica<br />
Dizemos que um Problema de Programação Linear está na forma Canônica ou<br />
na forma de Desigualdade do tipo “≤” se este se encontrar na seguinte forma:<br />
Max. (ou Min.) z = c1x1 + c2x2 +…+ cnxn ;<br />
s.a.: a11x1 + a12x2 + ... + a1nxn ≤ b1<br />
....<br />
am1x1 + am2x2 + ... + amnxn ≤ bm<br />
25
Na forma matricial:<br />
max (ou min) z = c T x<br />
s.a. Ax ≤ b<br />
x ≥ 0<br />
onde x,c ∈ ℜ n , b ∈ ℜ m , A ∈ ℜ mxn<br />
Exemplo 2.4.2: Max z 2x1 + 3x2<br />
s.a. 5x1 + x2 ≤ 0<br />
3x1 + 2x2 ≤ 0<br />
x1 + 4x2 ≤ 0<br />
x1, x2 ≥ 0<br />
2.4.1.3- Forma Padrão<br />
Dizemos que um Problema de Programação Linear está na forma Padrão ou na<br />
forma standard se este se encontrar na seguinte forma matricial:<br />
max (ou min) z = c T x<br />
s.a. Ax = b<br />
x ≥ 0<br />
onde x,c ∈ ℜ n , b ∈ ℜ m , A ∈ ℜ mxn<br />
2.4.5- Transformação de PPL´s gerais na forma padrão.<br />
Para transformar um Problema de Programação Linear (que se apresenta em<br />
forma de um sistema de inequações e equações lineares) em um sistema de somente<br />
equações lineares, deve-se fazer:<br />
2.4.5.1) Se bi < 0:<br />
Deve-se multiplicar a linha i do sistema por (-1).<br />
Exemplo 2.4.3:<br />
Max. 5x1 + 3x2 ≈ Max. 5x1 + 3x2<br />
sa 2x1 + x2 ≤ 8 sa 2x1 + x2 ≤ 8<br />
-x1 + 2x2 ≤ -3 (bi < 0) x1 - 2x2 ≥ 3<br />
x1, x2 ≥ 0 x1, x2 ≥ 0<br />
2.4.5.2) Se xi no modelo for livre de sinal ou irrestrito:<br />
xi é qualquer ou livre de sinal xi ≥ 0 ou xi ≤ 0.<br />
26
Escreve-se xi em função de xi’ e xi” , ou seja:<br />
Exemplo 2.4.4:<br />
Observação:<br />
xi = xi’ - xi” com xi’ ≥ 0 e xi” ≥ 0.<br />
Max. 5x1 + 3x2 ≈ Max. 5x1 + 3(x2’ – x2’’)<br />
sa 2x1 + x2 ≥ 8 sa 2x1 + (x2’ – x2’’) ≥ 8<br />
x1 + 2x2 ≥ 3 x1 - 2(x2’ – x2’’) ≥ 3<br />
x1 ≥ 0, x2 livre x1, x2’, x2’’ ≥ 0<br />
x2 = x2’ – x2’’<br />
Se xi’ = xi” xi =0.<br />
Se xi’ > xi” xi > 0.<br />
Se xi’ < xi” xi < 0.<br />
2.4.5.3) Ocorrência de xi ≤ 0:<br />
Troca-se xi por - xi’, onde xi’ ≥ 0.<br />
Exemplo 2.4.5:<br />
Max. 5x1 + 3x2 ≈ Max. 5x1 – 3x2’<br />
sa 2x1 + x2 ≥ 8 sa 2x1 – x2’ ≥ 8<br />
n<br />
x1 + 2x2 ≥ 3 x1 – 2x2’ ≥ 3<br />
x1 ≥ 0, x2 ≤ 0 x1, x2, x2’ ≥ 0<br />
x2 = – x2’<br />
2.4.5.4) Se: a x ≤ b ::<br />
j=<br />
1<br />
ij<br />
j<br />
Soma-se xn+i no membro da esquerda da linha i do sistema e considera-se o<br />
novo n = n + i (variável de folga), com xn+i ≥ 0.<br />
i<br />
27
Exemplo 2.4.5:<br />
Max. 5x1 + 3x2 ≈ Max. 5x1 + 3x2<br />
sa 2x1 + x2 ≤ 8 sa 2x1 + x2 + x3 = 8<br />
2.4.5.5) Se aijx j ≥ bi<br />
n<br />
j = 1<br />
-x1 + 2x2 ≤-3 x1 - 2x2 + 0x3 + x4 = 3<br />
x1, x2 ≥ 0 x1, x2 ,x3, x4 ≥ 0<br />
Subtrair-se xn+i no membro da esquerda da linha i e considerar-se o novo n<br />
= n + j (variável de excesso), com xn+i ≥ 0.<br />
Exemplo 2.4.6:<br />
Max. 5x1 + 3x2 ≈ Max. 5x1 + 3x2<br />
sa 2x1 + x2 ≥ 8 sa 2x1 + x2 - x3 = 8<br />
x1 + 2x2 ≥ 3 x1 - 2x2 - 0x3 - x4 = 3<br />
x1, x2 ≥ 0 x1, x2 ,x3, x4 ≥ 0<br />
2.4.5.6) Maximizar uma função objetivo é equivalente a minimizar o seu simétrico, ou<br />
seja:<br />
Máx. z = c T x Min. -z = -c T x.<br />
28