A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

1 Restrições Lineares sobre os Reais/Racionais Muitos problemas podem ser modelados através de restrições sobre variáveis que, para todos os efeitos práticos,

Apresentações semelhantes


Apresentação em tema: "1 Restrições Lineares sobre os Reais/Racionais Muitos problemas podem ser modelados através de restrições sobre variáveis que, para todos os efeitos práticos,"— Transcrição da apresentação:

1 1 Restrições Lineares sobre os Reais/Racionais Muitos problemas podem ser modelados através de restrições sobre variáveis que, para todos os efeitos práticos, podem tomar valores no domínio dos números reais (ou racionais). Essas variáveis são geralmente denominadas variáveis de decisão. Um caso particularmente importante ocorre quando todas as restrições sobre essas variáveis são lineares. Em muitos casos, pretendem-se soluções que não só satisfaãm todas as restrições, mas também que optimizem uma função (linear) objectivo - optimização condicionada Exemplos: –gestão da produção –redes de distribuição

2 2 Gestão da Produção Dados: a)Um conjunto de itens P 1,..., P n que se pretende produzir b)Um conjunto de recursos R 1,..., R m disponíveis para os produzir c)Uma matriz A, cujos elementos a ij representam a quantidade do recurso i necessário para produzir uma unidade do item j d)Um vector C, cujos elementos c j representam o lucro obtido por cada unidade do item j produzido e)Um vector B, cujos elementos b i representam a quantidade máxima do recurso i que pode ser utilizado Objectivo: Determinar a quantidade a produzir de cada item j

3 3 Gestão da Produção Gestão 0: Restrições Base Designando por X i a quantidade do item P i produzido, o problema de não sobre-utilização dos recursos existentes é modelado por a 11 X 1 + a 12 X a 1n X n =< b 1... a m1 X 1 + a m2 X a mn X n =< b m Por exemplo, sendo necessárias 3 minutos de uma máquina para fabricar 1 sapato e 4 minutos para 1 bota, representando por S e B o número de sapatos e botas e estando a máquina disponível 4 horas temos 3 S + 4 B =< 240

4 4 Gestão da Produção Gestão 1: Satisfação (de um dado lucro) Para modelar que um dado lucro L é atingido, adiciona-se ao modelo anterior a restrição c 1 X 1 + c 2 X c n X n >= L Por exemplo, se se obtem um lucro de 4(5) por cada sapato (bota) vendido, pretender que o lucro seja pelo menos de 3000 é modelada pela restrição 4 S + 5 B >= 3000 Gestão 2: Optimização (do lucro obtido) Para modelar a maximização do lucro obtido, adiciona-se ao modelo inicial a função objectivo L (a maximizar) Max L = c 1 X 1 + c 2 X c n X n

5 5 Gestão da Produção (Dual) Dados: a)Um conjunto de itens P 1,..., P n que se pretende produzir b)Um conjunto de recursos R 1,..., R m disponíveis para os produzir c)Uma matriz A, cujos elementos a ij representam a quantidade do recurso i necessário para produzir uma unidade do produto j d)Um vector C, cujos elementos c j representam o custo mínimo por cada unidade do item j produzido e)Um vector B, cujos elementos b j representam a quantidade do recurso j a utilizar Objectivo: Determinar os custos por recurso adequados

6 6 Gestão da Produção (Dual) Gestão 0d: Restrições Base Designando por Y j o custo incorrido por cada unidade do recurso j gasto, as restrições que impõe um custo mínimo por unidade de item i produzido são modeladas por a 11 Y 1 + a 21 Y a m1 Y m >= c 1 a 12 Y 1 + a 22 Y a m2 Y m >= c 2... a 1m Y 1 + a 2m Y a mn Y m >= c n

7 7 Gestão da Produção (Dual) Gestão 1d: Satisfação (de um dado custo total) A garantia de que o custo total do plano de produção não excede um valor V é modelada, por adição ao modelo da restrição b 1 Y 1 + b 2 Y b m Y m =< V Gestão 2d: Optimização (do custo total) Para modelar a minimização dos custo total do plano de produção, adiciona-se a função objectivo V (a minimizar) Min V = b 1 Y 1 + b 2 Y b m Y m

8 8 Redes de Distribuição Dados: a)Um conjunto de nós P 1,..., P n, dos quais P 1 é emissor e P n o receptor b)Uma matriz M, cujos elementos m i,j representam a capacidade da ligação (em bits/seg) entre os nós i e j c)Uma matriz C, cujos elementos c i,j representam o custo (em /bit) da transmissão entre os nós i e j; Objectivo: Avaliar o fluxo de informação que a rede é capaz de transmitir entre os nós emissor (P 1 ) e receptor (P n ).

9 9 Redes de Distribuição Restrições Base: Designando por X i,j a quantidade de informação debitada entre os nós i e j, as restrições de capacidade são X 1,1 =< m 1,1 % Em geral m i,i = 0... X m,n =< m m,n As restrições de igualdade de fluxo de entrada e saída em todos os k nós (excepto nos nós P 1 e P n ) são modeladas por X 1,2 +X 2,2 +X 3, X n,2 = X 2,1 +X 2, X 2,n X 1,3 +X 2,3 +X 3, X n,3 = X 3,1 +X 3, X 3,n... X 1,k +X 2,k +X 3,k +...+X n,k = X k,1 +X k, X k,n

10 10 Redes de Distribuição Redes 1: Satisfação (de um fluxo F entre P 1 e P n ) A verificação de que é possível transmitir um determinado fluxo de informação F entre os nós emissor (P 1 ) e receptor (P n ) é modelada pela adição da restrição X 1,2 +X 1,3 +X 1, X 1,n >= F ou X 1,n +X 2,n +X 3,n +...+X n-1,,n >= F ) Redes 2: Optimização (do fluxo total) Para modelar o máximo fluxo de informação que a rede é capaz de transmitir entre os nós P 1 e P n, adiciona-se uma função objectivo F (a maximizar) Max F = X 1,2 +X 1,3 +X 1, X 1,n

11 11 Formalização Os problemas de satisfação de restrições lineares sobre variáveis (de decisão) X i reais (ou racionais, se todos os parâmetros a ij são números racionais) têm a forma a 11 X 1 + a 12 X a 1n X n ρ 1 b 1 a 21 X 1 + a 22 X a 2n X n ρ 2 b 2... a m1 X 1 + a m2 X a mn X n ρ m b m em que ρ 1.. ρ m são relações do conjunto {, =,,, } Se se pretender a optimização das variáveis de decisão, inclui-se a optimização de uma função (linear) objectivo F Opt F = c 1 X 1 + c 2 X c n X n em que Opt pode ser um de {Max, Min, Sup, Inf}.

12 12 Interpretação Geométrica Dado um espaço com n dimensões, a restrição a i1 X 1 + a i2 X a in X n = b i define uma região admissível, correspondente aos pontos de um hiper-plano desse espaço. Como casos particulares temos um espaço tridimensional (n=3), em que o hiper-plano corresponde ao plano usual, e um espaço bidimensional (ou vulgar plano, n=2) em que o hiper- plano se reduz a uma recta. A restrição define uma região admissível que corresponde a todos os pontos do espaço n-dimensional, excepto os pontos do hiper-plano

13 13 Interpretação Geométrica As restrições e definem regiões admissíveis do tipo semi-hiper- espaço limitado pelo correspondente hiper-plano, incluído na região admissível. Com n=3 temos um semi-espaço e com n=2 um semi-plano. As restrições definem regiões admissíveis semelhantes, mas excluindo a fronteira. O conjunto de restrições define, num espaço a n dimensões, um hiper- poliedro (poliedro com n=3 e polígono com n=2) correspondente à intersecção das m regiões admissíveis (m+n com não negatividade). Algumas faces do hiper-poliedro pertencem (, ) à região admissível e outras não ( ). Devem ainda ser considerados hiper-planos de exclusão ().

14 14 Interpretação Geométrica Com exclusão das restrições, a região admissível é convexa. Em problemas de optimização a função C = c 1 X 1 + c 2 X c n X n define uma família de hiper-planos paralelos (1 para cada valor de C). O supremo e o ínfimo dessa função na região admissível corresponde a um (hiper-)vértice do hiper-poliedro, o último ponto em que um hiper-plano da função objectivo toca a região admissível quando se desloca para valores crescentes (Sup) ou decrescentes (Inf) de C.

15 15 Interpretação Geométrica Se esse vértice pertencer à região admissível ele corresponde igualmente ao seu Max ou Min Caso contrário (i.e. se foi excluído por alguma restrição >, < ou ) não existem Max/Min mas apenas Sup/Inf. No caso em que o vértice de óptimo pertence a uma aresta ou um lado do hiper-poliedro paralelos à família de hiper-planos de optimização, haverá em geral mais do que um ponto óptimo, já que a função objectivo tem o mesmo valor em todos os pontos dessas arestas e lados.

16 16 Exemplo (2 dimensões) max X1 + X2 Suj.2 X1 + X2 8 X1 + X2 3 X1 - X2 -5 X2 0 X2X2 x1x1 2 X1 + X2 8 X1 - X2 -5 X1 0 X1 + X2 3 X1 + X2 = kX1 + X2 = k

17 17 Complexidade Potencial Apesar de o espaço de pesquisa ser infinito, o problema de satisfação reduz-se à verificação de que as restrições definem um hiper-poliedro não vazio. Assim, pelo menos um dos vértice definidos pelos hiper-planos de fronteira das restrições (excepto restrições ) deve pertencer à região admissível. Como n restrições de igualdade (independentes) num espaço n- dimensional definem univocamente um ponto (solução de um sistema de n equações a n incógnitas), no pior caso, ter-se-á de verificar a pertença à região admissível de C m n pontos. Na prática, o número de vértices a testar é muito inferior. No pior caso, a complexidade do problema de satisfação é idêntica a um problema de optimização.

18 18 Formas Resolvidas Há pois que determinar uma forma expedita de representar os vértices, e pesquisem eficientemente se pertencem à região admissível. Em particular, estaremos interessados em algoritmos que Associem vértices a uma Forma Resolvida, Implementem a pesquisa através de um conjunto de manipulações algébricas. A associação deverá ser possível se e apenas se o conjunto de restrições inicial fôr satisfazível. Vamos abordar estas formas resolvidas para sistemas de restrições com riqueza de expressão crescente.

19 19 Restrições Não-Estritas / Variáveis Não-negativas As restrições de desigualdade podem ser substituidas por restrições de igualdade através da adição de variáveis de desvio (slacks), igualmente não negativas a i1 X a in X n b i a i1 X a in X n + S i = b i a i1 X a in X n b i a i1 X a in X n - S i = b i A existência de uma forma resolvida para estes sistemas de restrições é justificada pelo seguinte Lema 1: Todo o sistema de m equações a m+n incógnitas não negativas, é satisfazível sse admitir uma solução em que n variáveis são nulas. Demonstração: Se existe uma solução então o sistema é satisfazível.

20 20 Lema 1 (exemplo) Considere-se o sistema de 2 equações a 4 incógnitas (isto é, m = 2 e n = 2). Este exemplo permite perceber melhor os passos da demonstração (por indução em n) apresentada adiante. (S1)3X 1 –2X 2 + X 3 - X 4 = 4 X 1 + X 2 -2X 3 + X 4 = 2 que admite a solução não negativa =. Escolhendo arbitrariamente uma das variáveis, por exemplo X 4, e fazendo-se X 4 = 1- δ (notar o sinal -) obtem-se o sistema S2 (S2)3X 1 –2X 2 + X 3 = 5 - δ X 1 + X 2 -2X 3 = 1 + δ Assuma-se δ = 0. Pela hipótese de indução todo o sistema de m equações a m+n incógnitas (neste caso, 2 equações a 3 incógnitas) tem uma solução com n-1 (1) variáveis nulas.

21 21 Lema 1 (exemplo) Este é o caso de S2 que admite de facto a solução, podendo colocar-se na forma equivalente S3 (S3)X 1 = 11/7 + 3/7 X 2 – 1/7 δ X 3 = 2/7 + 5/7 X 2 – 4/7 δ Anulando a variável X2 obtem-se o sistema S4 (S4)X 1 = 11/7 – 1/7 δ X 3 = 2/7 – 4/7 δ Para toda a solução não negativa deste sistema existe uma solução do sistema S1 inicial. Com δ =0, temos obviamente a solução. Mas incrementando-se o valor de δ ir-se-á necessariamente obter uma nova solução de S1 em que uma das variáveis X 1, X 3 ou X 4 terá o valor 0.

22 22 Lema 1 (exemplo) (S4)X 1 = 11/7 – 1/7 δ X 3 = 2/7 – 4/7 δ Em geral duas situações podem acontecer. Os termos em δ são todos positivos (não é o caso do exemplo): Relembrando que tinhamos X 4 = 1- δ, poderia fazer-se δ=1, obtendo-se uma solução do sistema S1 com X 3 e X 4 nulos (sendo X 1 e X 3 mais positivos que 11/7 e 2/7, respectivamente). Alguns termos em δ são negativos (caso do exemplo): Neste caso, incrementando-se δ vão-se decrementando os valores das variáveis X 1 e X 3, bem com da variável X 4, nas soluções correspondentes de S1. Haverá então algum valor mínimo de δ que anulará uma destas variáveis, e garantirá as n (=2) variáveis nulas numa solução de S1.

23 23 Lema 1 (exemplo) (S4)X 1 = 11/7 – 1/7 δ X 3 = 2/7 – 4/7 δ Neste exemplo temos δ = 1/2 X 3 = 0 ( e X 1 = 3/2 ; X 4 = 1/2) δ = 1 X 4 = 0( e X 1 = 10/7 ; X 3 = 2/7) δ = 11 X 1 = 0( e X 3 = - 6 ; X 4 = -10) Para o menor destes valores de δ garante.-se pois que uma das variáveis se anula e nenhuma das outras se torna negartiva resolvendo-se o sistema inicial. Neste caso, a solução é de facto uma solução do sistema inicial S1 (S1)3X 1 – 2X 2 + X 3 - X 4 = 4 X 1 + X 2 - 2X 3 + X 4 = 2

24 24 Lema 1 (1) A demonstração é feita por indução em n. Sendo o caso n=0 trivial, falta demonstrar o passo de indução, ou seja, se qualquer sistema de m equações a n variáveis não negativas tem uma solução com n variáveis nulas, então qualquer sistema de m equações a n+1 variáveis não negativas tem uma solução com n+1 variáveis nulas. Consideremos um sistema satisfazível com m+n+1 variáveis ( S1) a i,1 X a i,m+n X m+n +a i,m+n+1 X m+n+1 = b i i: 1..m Se o sistema é satisfazível, existe uma solução X i = w i ( 0 para i: 1..m+n+1). Substituindo X m+n+1 por X m+n+1 = w m+n+1 -δ (S2) a i,1 X a i,m+n X m+n = c i +a i,m+n+1 δ (c i =b i - a i,m+n+1 w m+n+1 ) Uma solução deste sistema com δ=0 é uma solução do sistema S1 com X m+n+1 = w m+n+1.

25 25 Lema 1 (2) Assim, o sistema S3 é satisfazível (admite a solução inicial Xi = wi ) (S3) a i,1 X a i,m+n X m+n = c i Ora tendo este sistema, satisfazível, m equações e m+n variáveis, pela hipótese de indução, deve ter uma solução com n variáveis nulas. Sem perda de generalidade, considere-se que são as últimas n variáveis que se anulam, nessa solução, isto é, que existe uma solução X i = d i 0 para i: 1..m e X m+j = 0 para j : 1, n Desta forma, o sistema S3 pode reescrever-se na forma (S4) X i = d i + c i,m+1 X m c i,m+n X m+n Algebricamente, S4 é obtido de S3 por combinação linear das suas linhas. Aplicando a mesma combinação linear, não a S3 mas a S2, obtemos o sistema (S5) X i = d i + c i,m+1 X m c i,m+n X m+n + c i,m+n+1 δ

26 26 Lema 1 (3) Sendo obtido por uma combinação linear de S2, S5 é equivalente a S2. Assim, qualquer solução de S5 com δ=0 é uma solução do sistema inicial (S1), com X m+n+1 = w m+n+1. Se considerarmos apenas as soluções com as n variáveis X m+j (j: 1..n) nulas o sistema S5 pode ser reescrito como (S6) X i = d i + c i,m+n+1 δ Assim, qualquer solução deste sistema S5, corresponde a uma solução do sistema S1 em que X i = d i + c i,m+n+1 δ i : 1..m; X m+j = 0 j : 1..n; e X m+n+1 = w i -δ Desta forma o sistema S1 inicial de m equações a m+n+1 variáveis tem uma solução com n variáveis nulas (todas as variáveis X m+j com j: 1..n).

27 27 Lema 1 (4) Se algum dos dis ou se wi fôr nulo, então basta fazer δ=0 para obter uma solução de S1 com n+1 variáveis nulas: as anteriores mais Xi (i: 1..m) ou Xm+n+1. X i = d i + c i,m+n+1 δ i : 1..m; X m+n+1 = w i -δ No caso mais geral, em que os d i s e w i são estritamente positivos, pode obter-se uma nova solução para um valor de δ > 0 e que garanta d i + c i,m+n+1 δ i = 0 para algum i : 1..m; ou δ m+n+1 = w i No menor destes valores δ i, S6 tem uma solução com uma variável nula. Mas então o sistema S1 tem uma solução com n+1 variáveis nulas: para além da variável correspondente de S6, todas as variáveis X m+j (j: 1..n) são nulas, o que prova o teorema.

28 28 Forma Resolvida SF0 Definição: Dado um sistema de equações de m equações a m+n incógnitas (S1) a i,1 X a i,m+n X m+n = b i (i: 1..m) a sua forma resolvida SF0 tem a forma (SF0) X i = d i + c i,m+1 X m c i,m+n X m+n sendo d i 0 i: 1..m As variáveis no lado esquerdo são as variáveis básicas, sendo as outras as não básicas (as variáveis básicas podem ser quaisquer e não as primeiras m variáveis como são apresentadas para simplificar a notação). O lema anterior permite justificar o seguinte teorema.

29 29 Forma Resolvida SF0 Teorema: Um sistema de equações de m equações a m+n variáveis não-negativas é satisfazível sse se puder reescrever na forma SF0. Demonstração Se se pode reescrever na forma resolvida SF0, então o sistema admite a solução não negativa,. Dado o sistema satisfazível (S1) a i,1 X a i,m+n X m+n = b i (i: 1..m) o lema anterior garante uma solução, que permite a forma SF0 (SF0)X i = d i + c i,m+1 X m c i,m+n X m+n com d i 0 para i: 1..m através de uma combinação linear das suas equações.

30 30 Interpretação Geométrica Exemplo: Dadas R3: 2X1 + X2 8 ; R4: X1 + X2 3 ; R5: X1 - X2 -5, a região admissível é constituída pela intersecção das sub-regiões definidas por cada uma das restrições. X2X2 X1 2 X1 + X2 + X3 = 8 X1 - X2 - X5 = -5 X1 + X2 - X4 = 3

31 31 Na realidade, pretendendo-se a não-negatividade de X1 e X2, deverão ser consideradas mais 2 restrições R1: X1 0 e R2: X2 0 A região admissível é constituída pela intersecção das sub-regiões definidas pelas 5 restrições {R1, R2, R3, R4, R5}. Interpretação Geométrica X2 = 0 X2X2 2 X1 + X2 = 8 X1 - X2 = -5 X1 = 0 X1 + X2 = 3 X1

32 32 Cada uma das rectas correspondentes a uma restrição pode ser identificada pelo anulamento da correspondente variável de desvio. Interpretação Geométrica 2X1 + X2 8 2 X1 + X2 + X3 = 8 X2 = 0 X2 X1X1 X3 = 0 X5 = 0 X1 = 0 X4 = 0 2 X1 + X2 = 8 X1 - X2 = -5 X1 + X2 = 3 X1 - X2 -5 X1 - X2 - X5 = -5 X1 + X2 3 X1 + X2 - X4 = 3

33 33 A intersecção de quaisquer duas rectas, define um potencial vértice da região admissível, e é obtida pelo anulamento de 2 (das 5 variáveis). Interpretação Geométrica X2 X1X1 X3 = 0 X5 = 0 X1 = 0 X4 = 0 X3 = 0 X2 = 0 X3 = 0 X4 = 0 X2 = 0 X4 = 0 X2 = 0 X5 = 0 X1 = 0 X5 = 0 X1 = 0 X4 = 0 X5 = 0 X1 = 0 X2 = 0 X1 = 0 X3 = 0 X2 = 0

34 34 Neste caso temos um sistema de 3 igualdades a 5 variáveis (2 variáveis de decisão, X 1 e X 2, e 3 variáveis de desvio (X 3, X 4 e X 5 e ). Interpretação Geométrica 2 X1 + X2 8 X1 + X2 3 X1 - X2 -5 X1, X2 0 2 X1 + X2 + X3 = 8 X1 + X2 - X4 = 3 X1 - X2 - X5 = -5 Existem naturalmente 10 combinações de variáveis 2 a 2. O anulamento de quaisquer 2 variáveis, corresponde a um vértice potencial da região admissível. Esse anulamento corresponde igualmente a uma escolha de variáveis não básicas, e a uma potencial forma SF0 do sistema inicial. Apenas as formas SF0 potenciais em que os coeficientes livres são não negativos correspondem a formas SF0 reais (e reais vértices da região admissível).

35 35 Interpretação Geométrica 2 X1 + X2 8 X1 + X2 3 X1 - X2 -5 X1, X2 0 2 X1 + X2 + X3 = 8 X1 + X2 - X4 = 3 X1 - X2 - X5 = -5 X2 = 0 X2 X1X1 X3 = 0 X5 = 0 X1 = 0 X4 = 0 X3 = X1 - X2 X4 = -3 + X1 + X2 X5 = 5 + X1 - X2 x1 = 1 - x3/3 + x5/3 x2 = 6 - x3/3 - 2 x5/3 x4 = x3/3 - X5/3 X1 = 5 - X3 - X4 X2 = -2 + X3 + 2 X4 X5 = X3 - 3 X4 X2 = X1 - X3 X4 = 5 - X1 - X3 X5 = X1 + X3 X1 =-1 + X4/2 + X5/2 X2 = 4 + X4/2 - X5/2 X3 = X4/2 - X5/2 X2 = 5 + X1 - X5 X3 = X1 + X5 X4 = X1 - X5 X1 = 3 - X2 + X4 X3 = 2 + X2 - 2 X4 X5 = X2 + X4

36 36 A existência de soluções para o conjunto de restrições equivale a que a região admissível seja não vazia. Um problema em que nenhum vértice seja admissível é um problema sem solução. Por exemplo, se nas restrições anteriores se trocarem o sinal das restrições R3 e R4, o novo sistema R3: 2X1 + X2 8 R3: 2X1 + X2 -X3 = 8 R4: X1 + X2 3 ou R4: X1 + X2 +X4 = 3 R5: X1 - X2 -5R5: X1 - X2 -X5 = -5 corresponde a um problema que é impossível e não tem qualquer solução. Interpretação Geométrica

37 37 Interpretação Geométrica 2 X1 + X2 8 X1 + X2 3 X1 - X2 -5 X1, X2 0 2 X1 + X2 - X3 = 8 X1 + X2 + X4 = 3 X1 - X2 - X5 = -5 X2 = 0 X2 X1X1 X3 = 0 X5 = 0 X1 = 0 X4 = 0 X3 = X1 + X2 X4 = 3 - X1 - X2 X5 = 5 + X1 - X2 x1 = 1 + x3/3 + x5/3 x2 = 6 + x3/3 - 2 x5/3 x4 = x3/3 + x5/3 X1 = 5 + X3 + X4 X2 = -2 - X3 - 2 X4 X5 = X3 + 3 X4 X2 = X1 + X3 X4 = -5 + X1 - X3 X5 = X1 - X3 X1 = -1 - X4/2 + X5/2 X2 = 4 - X4/2 - X5/2 X3 = X4/2 + X5/2 X2 = 5 + X1 - X5 X3 = X1 - X5 X4 = X1 + X5 X1 = 3 - X2 - X4 X3 = -2 - X2 - 2 X4 X5 = X2 - X4

38 38 Para avaliar a satisfazibilidade de um problema basta pois verificar que pelo menos um dos potenciais vértices corresponde a uma solução. Mas isso corresponde a colocar o sistema de restrições na forma SF0. Por exemplo, o vértice admissível X1 = 1 - X3/3 + X5/3 X2 = 6 - X3/3 - 2 X5/3 X4 = X3/3 - X5/3 Corresponde à reescrita na forma SF0 do sistema inicial 2 X1 + X2 82 X1 + X2 - X3 = 8 X1 + X2 3 ou X1 + X2 + X4 = 3 X1 - X2 -5 X1 - X2 - X5 = -5 Passagem para a Forma Resolvida SF0

39 39 Para colocar um sistema de m restrições de igualdade a m+n variáveis (possivelmente proveniente de um sistema de m restrições de desigualdade ou ) na forma SF0, basta pois 1.Escolher m variáveis como variáveis básicas 2.Reescrever o sistema nessa base 3.Verificar se os coeficentes livres (valor das variáveis básicas quando as não básicas se anulam) são não negativos O problema desta abordagem é a existência de um número muito elevado (combinações de m+n, n a n, ) de possibilidades de escolha da base. A escolha é trivial no caso em que todas as restrições são do tipo a i1 X a in X n b i com b i >= 0 em que as variáveis não básicas são as de decisão (X 1 a X n ) já que a solução X i = 0 ( 1 i n) é admissível (pois 0 b i ). Passagem para a Forma Resolvida SF0 m+n m C

40 40 Conversão em SF0 - Simplex No caso mais geral em que as restrições são do tipo ou coloca-se aquestão de garantir a passagem eficiente de um conjunto de restrições lineares sobre variáveis não negativas para uma forma resolvida SF0, se existir, sem escolha arbitrária dos vértices (variáveis básicas). Por outro lado, se se pretender a integração dum resolvedor de restrições simbólicos num sistema de programação em lógica (CLP) esse resolvedor deve ser incremental. Há pois que definir um procedimento eficiente e incremental para efectuar essa transformação. Na prática, há que definir uma estratégia para escolher eficientemente as variáveis básicas e as não básicas. Uma solução possível, geralmente utilizada, é esencialmente baseada no algoritmo SIMPLEX.

41 41 Há pois que definir uma estratégia para determinar quais as variáveis que devem entrar na base. Essa estratégia é fácil de entender se se pretender não apenas verificar a satisfação de um conjunto de restrições, mas ainda a optimização de uma função objectivo, que tal como as restrições seja linear. Assim, assumamos que, dado um conjunto de m restrições de igualdade nas variáveis X 1 a X m+n,, já colocado na forma SF0, se pretende adicionalmente maximizar (o caso da minimização é semelhante) uma função max F = c 1 X 1 + c 2 X C m+n X m+n Optimização em SF0

42 42 max F = c 1 X 1 + c 2 X C m+n X m+n Sem perda de generalidade, consideremos que as primeiras m variáveis X 1 a X m são as variáveis básicas, isto é, que as restrições foram reescritas na forma SF0 X 1 = d 1 + c 11 X m c 1n X m+n... X m = d m + c m1 X m c mn X m+n Substituindo na função F as variáveis básicas pelas suas expressões nas não básicas obtemos max F = k + k 1 X m+1 + k 2 X m k n X m+n Optimização em SF0

43 43 max F = k + k 1 X m+1 + k 2 X m k n X m+n Esta expressão mostra que no vértice definido pelas variáveis básicas (com as não-básicas nulas) a função a maximizar tem o valor k. Mostra ainda que, se todos os coeficientes k i forem negativos, não se pode obter maiores valores de F. No caso de haver coeficientes k i positivos, um aumento da variável correspondente aumenta o valor da função F. Quanto maior o coeficiente, maior o aumento da função objectivo por aumento unitário da variável. Optimização em SF0

44 44 max F = k + k 1 X m+1 + k 2 X m k n X m+n Numa perspectiva de optimização, dada uma certa base admissível, para a qual existam valores k i positivos, o valor da função objectivo pode ser melhorado (ser maior que k) tornando positiva as correspondentes variáveis não básicas. Mas para mantermos o sistema na forma SF0, se se desanula uma variável não-básica, essa situação deverá ser compensada anulando uma das variáveis básicas. Assim, a estratégia de optimização a seguir é a de, partindo de uma base admissível, proceder a um conjunto de mudanças de base até se poder reescrever a função objectivo com coeficientes exclusivamente não negativos. Optimização em SF0

45 45 Obviamente, uma mudança de base, envolve a escolha de a)uma variável não básica para entrar na base, e b)uma variável básica para sair da base, A escolha da variável de entrada pode seguir a heurística delineada atrás: A variável de entrada é aquela a que corresponde na função objectivo o coeficiente mais positivo (maximização) ou mais negativo (minimização). Uma vez escolhida a variável de entrada, ela deverá aumentar tanto quanto possível. No entanto, na forma SF0 corrente, um aumento dessa variável poderá conduzir à diminuição das variáveis básicas. Optimização em SF0

46 46 Com efeito, tome-se a forma SF0 abaixo e, sem perda de generalidade, considere-se X m+1 como variável de entrada. maxF = k + k 1 X m+1 + k 2 X m k n X m+n suj.X i = d i + c i1 X m c in X m+n i:1..m Mantendo as outras variáveis não básicas nulas, as equações reescrevem-se como X i = d i + c i1 X m+1 i:1..m Assim, sendo d i 0, um aumento de X m+1 anula as variáveis básicas (em que c i1 < 0), quando tomar o valor d i /|c i1 |. Como se pretende anular uma variável básica, mantendo as outras não negativas, a escolha da variável de saída recai na variável básica Xi para a qual seja menor o valor d i /|c i1 |. Optimização em SF0

47 47 Resumindo, a maximização da função objectivo de um sistema de m igualdades a m+n variáveis envolve a escrita do sistema e da função objectivo na forma SF0 maxF = k + k 1 X m+1 + k 2 X m k n X m+n suj.X i = d i + c i1 X m c in X m+n i:1..m e a execução do seguinte algoritmo: Enquanto a função objectivo tiver coeficientes positivos mudar a base escolhendo como variável de entrada a variável não básica X j com coeficiente k j mais positivo na função objectivo como variável de saída a variável básica i com c ij < 0 e menor valor d i /|c ij | na respectiva restrição Optimização em SF0

48 48 Do ponto de vista geométrico, e como visto atrás, cada forma SF0 corresponde a um vértice da região admissível. Assim, ao trocar uma variável básica por outra não básica este algoritmo vai percorrendo vários vértices da região admissível, com valores crescentes da função objectivo. Por apenas trocarem uma variável, dois vértices consecutivos estão unidos por uma aresta do hiper-poliedro que representa a região admissível. Interpretação Geométrica

49 49 Exemplo: Interpretação Geométrica Max X 1 + 2X 2 R1: -X 1 + 3X 2 9 R2: X 1 + X 2 11 R3: 2X 1 + X 2 18 X 1,X 2 0

50 50 Exemplo: Interpretação Geométrica Max X 1 + 2X 2 -X 1 + 3X 2 + X 3 = 9 X 1 + X 2 + X 4 = 11 2X 1 + X 2 + X 5 = 18 X 1,X 2 0 Max X 1 + 2X 2 X 3 = 9 + X 1 - 3X 2 9/3 X 4 = 11 - X 1 - X 2 11/1 X 5 = X 1 - X 2 18/1 entra X 2, sai X 3

51 51 Max 6 + 5X 1 /3 - 2X 3 /3 X 2 = 3 + X 1 /3 - X 3 /3 9 X 4 = 8 - 4X 1 /3 + X 3 /3 6 X 5 = X 1 /3 + X 3 /3 45/7 entra X 1, sai X 4 Exemplo. Interpretação Geométrica Max X 1 + 2X 2 X 3 = 9 + X 1 - 3X 2 9/3 X 4 = 11 - X 1 - X 2 11/1 X 5 = X 1 - X 2 18/1 entra X 2, sai X 3

52 52 Max 6 + 5X 1 /3 - 2X 3 /3 X 2 = 3 + X 1 /3 - X 3 /3 X 4 = 8 - 4X 1 /3 + X 3 /3 X 5 = X 1 /3 + X 3 /3 entra X 1, sai X 4 Exemplo. Interpretação Geométrica Max 16 - X 3 /4 - 5X 4 /4 X 1 = 6 + X 3 /4 - 3X 4 /4 X 2 = 5 + X 3 /12- X 4 /4 X 5 = 1 -7X 3 /12+ 7X 4 /4 óptimo encontrado

53 53 Este algoritmo de optimização pressupõe que, no início, o conjunto de restrições foi reescrito na forma SFO, que era exactamente o objectivo que nos levou a abordar o problema da optimização! Na realidade, como vimos, a colocação na forma SF0 não levanta qualquer problema quando as m restrições de igualdade a m+n variáveis provêm de um conjunto de m restrições de desigualdade a i 1 X 1 + a i 2 X a i n X n =< b i, b i 0 para i: 1..m em que todos os b i são não negativos (basta escolher as variáveis X 1 a X n para variáveis não básicas, pois o seu anulamento satisfaz as restrições!). A questão coloca-se pois numa situação em que, para algum i, existe uma restrição do tipo a i 1 X 1 + a i 2 X a i n X n >= b i, b i 0 Optimização em SF0

54 54 Nestas condições, a restrição R i pode colocar-se na forma a i 1 X 1 + a i 2 X a i n X n - S i = b i, b i 0 ou, equivalentemente S i = -b i + a i1 X a in X n Pode agora introduzir-se uma variável artificial não negativa, Z i, na restrição, obtendo-se S i - Z i = -b i + a i1 X a in X n O que permite escrever a equação na forma Z i = b i + S i - a i1 X a in X n Passagem para a Forma Resolvida SF0

55 55 Z i = b i + S i - a i1 X a in X n Esta equação tem duas propriedades importantes 1.É equivalente à restrição inicial se fôr Z i = 0. 2.É satisfeita quando as variáveis de decisão, e a variável de desvio, são nulas. Desta forma, se uma solução admissível do sistema modificado é uma solução do sistema inicial se Z i = 0, tudo o que é necessário fazer é, converter o sistema modificado, num outro equivalente, mas com Z i = 0. Na prática, sendo Z i não negativo, este objectivo corresponde a minimizar Z i, ou, equivalentemente, maximizar – Z i. Este procedimento pode naturalmente ser generalizado. Passagem para a Forma Resolvida SF0

56 56 Dado um conjunto m de restrições de igualdade a m+n variáveis, a passagem à forma SF0 pode fazer-se nos seguintes passos 1.Escolhem-se m variáveis para variáveis básicas, e reescreve-se o sistema isolando as variáveis básicas X i = b i + c i1 X m c in X m+n 2.Se todos os b i forem não negativos, o sistema está na forma SFO. Caso contrário, introduzem-se variáveis artificiais nas restrições adequadas, reescrevendo-as em Z i = - d i + c i1 X m c in X m+n - X i 3.Finalmente minimiza-se a soma das variáveis artificiais. Naturalmente, se o mínimo fôr 0, no ponto de mínimo todas as variáveis artificiais são nulas. Neste caso, e em princípio, estas variáveis serão não básicas no sistema obtido e poderão ser simplesmente eliminadas do sistema. Passagem para a Forma Resolvida SF0

57 57 Ao introduzir-se uma variável artificial introduz-se uma nova dimensão no problema. –Por exemplo, se o problema inicial tinha duas dimensões, X e Y, pode considerar-se a nova variável como a 3ª dimensão, Z. O problema inicial, pode considerar-se a intersecção do problema estendido com o espaço inicial. –Por exemplo, em 2D, o problema inicial é a intersecção do problema estendido (3D) com o plano X-Y. Embora para o problema inicial X i =0 não seja solução, no problema estendido, o ponto X i =0, Z > 0 é uma solução. A minimização de Z vai induzir um percurso no hiper-poliedro até atingir o espaço inicial (em 2D, o plano X-Y). Interpretação Geométrica

58 58 Exemplo. Interpretação Geométrica -X 1 + 3X 2 + X 3 = 9 X 1 + X 2 + X 4 = 11 2X 1 + X 2 + X 5 = 18 X 1 + 2X 2 - X 6 = 12 -X 1 + 3X 2 9 X 1 + X X 1 + X 2 18 X 1 + 2X 2 12 X i 0 X 3 = 9 + X 1 - 3X 2 X 4 = 11 - X 1 - X 2 X 5 = 18 -2X 1 - X 2 X 6 = X 1 + 2X 2

59 59 Exemplo Interpretação Geométrica min Z 1 = 12 - X 1 - 2X 2 + X 6 X 3 = 9 + X 1 - 3X 2 X 4 = 11 - X 1 - X 2 X 5 = 18 -2X 1 - X 2 Z 1 = 12 - X 1 - 2X 2 + X 6 X 3 = 9 + X 1 - 3X 2 X 4 = 11 - X 1 - X 2 X 5 = 18 -2X 1 - X 2 X 6 = X 1 + 2X 2 + Z 1 Projecção no plano X 1 -X 2 do ponto =

60 60 Exemplo Interpretação Geométrica min 6 - 7X 1 /3 - 2X 3 /3 + X 6 X 2 = 3 + X 1 /3 - X 3 /3 X 4 = 8 - 4X 1 /3 + X 3 X 5 = X 1 /3 + X 3 /3 Z 1 = 6 - 8X 1 /3 + 2X 3 /3 + X 6 min Z 1 = 12 - X 1 - 2X 2 + X 6 X 3 = 9 + X 1 - 3X 2 X 4 = 11 - X 1 - X 2 X 5 = 18 -2X 1 - X 2 Z 1 = 12 - X 1 - 2X 2 + X 6 Projecção no plano X 1 -X 2 do ponto =

61 61 Exemplo Interpretação Geométrica min Z 1 X 1 = 18/5 + 2X 3 /5 + 3X 6 /6 -3Z 1 /5 X 2 = 21/5 - X 3 /5 + X 6 /5 - Z 1 /5 X 4 = 16/5 - X 3 /5 - 4X 6 /5 +4Z 1 /5 X 5 = 33/5 - 3X 3 /5 - 7X 6 /5 +7Z 1 /5 min 6 - 7X 1 /3 - 2X 3 /3 + X 6 X 2 = 3 + X 1 /3 - X 3 /3 X 4 = 8 - 4X 1 /3 + X 3 X 5 = X 1 /3 + X 3 /3 Z 1 = 6 - 8X 1 /3 + 2X 3 /3 + X 6 18/5 21/5 O ponto já está no plano X 1 -X 2


Carregar ppt "1 Restrições Lineares sobre os Reais/Racionais Muitos problemas podem ser modelados através de restrições sobre variáveis que, para todos os efeitos práticos,"

Apresentações semelhantes


Anúncios Google