Módulo 02 - Resolução Gráfica dos Problemas de Programação Linear Um problema de programação linear consiste em determinar valores nãonegativos para as variáveis de decisão, satisfazendo as restrições impostas de forma a otimizar (maximizar ou minimizar) a função linear. Para problemas que apresentam duas variáveis de decisão, a solução ótima pode ser encontrada graficamente. Um problema com três variáveis também pode ser resolvido graficamente, mas na maioria das vezes, torna-se uma tarefa árdua. A partir de quatro variáveis a resolução somente será possível algebricamente. Retornando ao exemplo do módulo anterior, apresenta-se a sua resolução gráfica. Seja o seguinte problema de programação linear: Função Objetivo: máx Z = 200 x1 + 300 x2 2 x1 + x2 ≤ 20 Sujeitos a: 4 x1 ≤ 32 x2 ≤ 10 x1 , x2 ≥ 0 Solução: Variáveis de decisão: x1 - quantidade do produto A1 a ser produzido. x2 - quantidade do produto A2 a ser produzido. Inicialmente, determina-se o conjunto de pontos ( x1 , x2 ) que satisfaçam as restrições. Para isso, determinam-se os pontos no plano cartesiano que satisfaçam cada uma das inequações das restrições a seguir: 1ª ) restrição : 2 x1 + x2 ≤ 20 2ª ) restrição : 4 x1 ≤ 32 3ª ) restrição : x2 ≤ 10 4ª ) restrição : x1 ≥ 0 e x2 ≥ 0 Conforme gráfico (1) a seguir, os pontos que satisfazem todas as restrições estão na intersecção das regiões encontradas pelas 1ª), 2ª), 3ª) e 4ª) restrições. As flechas indicam o semiplano que satisfaz cada uma das restrições. O conjunto de pontos que satisfazem todas as restrições é chamado de região viável ou conjunto dos pontos viáveis. Para se determinar, caso exista, um ponto ( x1* , x2* ) que pertence ao conjunto de pontos viáveis, de forma que a função Z = 200 x1 + 300 x2 assuma o maior valor possível, o problema torna-se: Estabelece-se alguns valores para a função Z e obtêm-se as suas curvas de nível. Por exemplo: 200 x1 + 300 x2 = 1200 200 x1 + 300 x2 = 2400 200 x1 + 300 x2 = 3600 As respectivas curvas de nível também estão representadas no gráfico (1). Observe que as curvas de nível são todas retas paralelas e que a função assume valor cada vez maior num determinado sentido. Deve-se provar ainda, que as curvas de nível sejam perpendiculares as vetor gradiente da função, isto é, as curvas de nível da função Z = 200 x1 + 300 x2 são ⎛ ∂Z ∂Z ⎞ ⎟⎟ = (200, 300) . O vetor gradiente fornece o sentido perpendiculares ao vetor ⎜⎜ , ⎝ ∂ x1 ∂ x2 ⎠ do crescimento da função. Assim, pode-se determinar uma solução para o problema, se existir: Gráfico (1): Região Viável e curvas de nível. Portanto, o ponto ( x1* , x2* ) = (5, 10) é a solução ótima e o maior valor que a função pode assumir é 4000 (valor ótimo) do problema. Resposta: Devem-se produzir 5 unidades do produto A1 e 10 unidades do produto A2 e a receita bruta máxima é 4000 u.m. Outros exemplos: Represente graficamente e determine, se existir, a solução ótima dos seguintes problemas. 1) Função Objetivo: min Z = 30 x1 + 20 x2 4 x1 + x2 ≥ 20 Sujeitos a: x1 + 2 x2 ≥ 10 ≥ 2 x1 x1 , x2 ≥ 0 Solução: Observação: Como é um problema de minimização, pesquisam-se as curvas de nível no sentido oposto ao gradiente. ⎛ 30 20 ⎞ Solução ótima: ( x1* , x2* ) = ⎜ , ⎟ ; ⎝ 7 7 ⎠ Valor ótimo para um custo mínino: 1300 . 7 3) Função Objetivo: máx f ( x1 , x2 ) = x1 + 2 x2 4 x1 + x2 ≥ 20 Sujeitos a: x1 + 2 x2 ≥ 10 x1 x1 , x 2 ≥ 0 Solução: ≥ 2 Para este problema não existe solução ótima finita, pois o valor da função cresce indefinidamente dentro da região viável. Diz-se que é um problema ilimitado. 4) Função Objetivo: min f ( x1 , x2 ) = x1 + x2 − 2 x1 + x2 ≥ 2 Sujeitos a: x1 − 2 x2 ≥ 2 x1 ≥ 0, x2 ≥ 0 Solução: O conjunto de pontos viáveis para este problema é um conjunto vazio, pois não há região do plano que satisfaz as quatro restrições. Portanto, o problema é inviável. 5) Função Objetivo: máx Z = x1 + x2 − 2 x1 + x2 ≤ 2 Sujeitos a: x1 − 2 x2 ≤ 2 x1 + x2 ≤ 4 x1 ≥ 0, x2 ≥ 0 Solução: Este problema possui infinitas soluções ótimas, pois o segmento de reta de extremidades A e B é solução ótima, ou seja, qualquer ponto H escrito da forma H = β A + (1 − β) B , com β ∈ [0,1] é solução ótima do problema.