A otimização é o processo de encontrar a melhor solução (ou solução ótima) para um problema. Eiste um conjunto particular de problemas nos quais é decisivo a aplicação de um procedimento de otimização. Muitos processos podem se beneficiar de uma alocação otimizada de recursos. Esses recursos podem incluir capital, equipamentos, tarefas, e devem ser corretamente alocados nas quantidades, nos tempos e na seqüência para a obtenção do melhor resultado possível. São problemas compleos, muitas vezes de difícil solução e que envolvem significativas reduções de custos, melhorias de tempos de processos, ou uma melhor alocação de recursos em atividades. As técnicas de otimização devem ser utilizadas quando não eiste uma solução simples e diretamente calculável para o problema. Isso geralmente ocorre quando a estrutura do problema é complea, ou eistem milhões de possíveis soluções. Ma Um problema de Programação Não Linear (PNL) pode ser colocado da seguinte forma: Encontre valores de,,..., n que: (min) tq z g g = f(,,..., n ) (,,..., n )( (..., )( g... m,, n, = ou ) b, = ou ) b........ (,,..., n) (, = ou ) b m
Da mesma forma que na Programação Linear (PL) na PNL f(,,..., n ) é a função objetivo(fo) e g i (,,..., n ) (, = ou ) b i com i =,,..., m são asrestrições. Quando não eistirem restrições teremos a PNL irrestrita. O conjunto de todos os pontos (,,..., n ) tal que i é um número real é representado por R n. Assim R é o conjunto de todos os números reais. O conjunto de todos os pontos (,,..., n ) que satisfazem as restrições de um PPNL é denominada de Região Viável (RV). Um ponto na região é denominado de Ponto Viável (PV) e um ponto fora da região é denominado depontoinviável. Um ponto * na região viável tal que f(*) f() é uma solução ótima do PPNL. (Se o problema for de minimização * é uma solução ótima se f(*) f() para todos os pontos da região). Se f, g, g,..., g m forem funções lineares então o problema será de PL e poderá ser resolvido pelo algoritmo Simple. () O custo de fabricação de um produto de uma empresa écreais e a demanda pelo mesmo é D(p). Se a empresa quer maimizar o lucro qual deve ser o preço final do produto.
() Secunidades de capital el unidades de mão de obra são utilizadas uma empresa pode produzir cl unidades de um produto. O custo do capital por unidade é de R$ 4,00 e o do trabalho é de R$,00. Se o total disponível é de R$ 8,00 como a empresa pode maimizar a quantidade de bens a ser manufatura? Lembrar que: A região viável de um PPL é um conjunto conveo, isto é, se A e B são pontos viáveis então todos os pontos do segmento ligando A e B são também viáveis. Também que, se um PPL tem uma solução ótima então ela é um ponto etremo da região viável. Para um PPNL um ponto ótimo não é necessariamente um ponto etremo da região viável. De fato para um PPNL a solução ótima pode nem sequer ser um ponto de fronteira. Um PPNL cuja solução ótima não é um ponto etremo. D é a solução ótima sobre a região viável formada pelo triângulo ABE. l 8 E 4 A D B ma z = cl s. a 4c + l 8 c, l 0 c cl = 4 cl = cl = Um PPNL cuja solução ótima não está na fronteira da região viável. A solução ótima é z = quando = ½. E não está na fronteira da região viável. / ma z = f() s. a 0 Para um PPNL (maimização), um ponto viável = (,,..., n ) é um máimo local se para um ε suficientemente pequeno, qualquer ponto viável = (,,..., n ) tal que < ε satisfaz f() f( ). 3
De outro modo, um ponto é um máimo local se f() f( ) para todo viável que está próimo de. Um ponto que é um mínimo ou máimo local é denominado de local, relativo ouetremo. Para um PPL (maimização), qualquer mínimo local é uma solução ótima do problema (Porquê?). Para um PPNL isso não é necessariamente verdadeiro. Por eemplo, considere o seguinte PPNL: ma z = f() s.a 0 0 onde f() é apresentada na figura seguinte (próima lâmina). Note que os pontos A, B e C são máimos locais mas C é a única solução Um máimo local pode não ser uma solução ótima de um PPNL. z A B C 0 z = f() ótima do problema. Seja f(,,..., n ) uma função que é definida para todos os pontos (,,..., n ) em um conjunto conveo S. A função f(,,..., n ) é uma função convea em um conjunto conveo se para qualquer S e S. f[c + ( c) ] cf( ) + ( c)f( ) para 0 c. 4
A função f(,,..., n ) é uma função côncava em um conjunto conveo S se para qualquer S e S. f[c + ( c) ] cf( ) + ( c)f( ) para 0 c. Considerando as definições anteriores pode-se verificar que uma função f(,,..., n ) é convea se e somente -f(,,..., n ) é côncava e viceversa. A f() é convea se e só se o segmento unindo dois pontos quaisquer da curva nunca está abaio dela. Ponto A = (, f( )) Ponto D = (, f( )) Ponto C = (c +( - c), cf( )+( - c)f( )) Ponto B = (c +(-c), f(c +(-c) )) A y = f() C B c + ( c) Da figura f(c +(-c) )) cf( )+(-c)f( )) D A f() é côncava se e só se o segmento unindo dois pontos quaisquer da curva nunca está acima dela. Ponto A = (, f( )) y = f() Ponto D = (, f( )) Ponto C = (c +(-c), f(c +(-c) )) Ponto B = (c +(-c), cf( )+(-c)f( )) Da figura f(c +(-c) ) cf( )+(-c)f( ) c + ( c) A C B D Para 0, f() = e g() = e são funções conveas e f() = / é uma função côncava. Favor verificar (graficamente e analiticamente)! Pode ser mostrado que a soma de duas funções conveas é convea e que a soma de duas funções côncavas é côncava. Assim considerando o eemplo anterior a função h() = f() + g() = + e é convea. 5
y y = f() A C B Uma vez que o segmento AB está abaio de y = f() e o segmento BC está acima da y = f(), f() não é côncava nem convea. Uma função linear da forma f() = a + b é tanto convea quanto côncava. Isso é uma conseqüência de: f[c + ( c) ] = a[c + ( c) ] + b = = c(a + b) + ( c)(a + b) = = cf( ) + ( - c)f( ) Antes de discutir como determinar se uma função é convea ou côncava vai-se provar um resultado que ilustra a importância desse tipo de função. Considere um PPNL de maimização (minimização) e suponha que a região viável S seja um conjunto conveo. Se f() é côncava (convea) em S, então qualquer máimo (mínimo) local do PPNL é uma solução ótima do PPNL. Se o teorema é falso então deve eistir um máimo local que não é uma solução ótima. Seja S a região viável para o PPNL (por hipótese S é conveo). Então para algum S, f() > f( ). Pela definição de função côncava, tem-se que para qualquer 0 < c <, f(c + ( c)) cf( ) + ( c)f() > cf( ) + ( c)f( ) pois f() > f( ) = f( ) Agora observe que para c arbitrariamente próimo de, c + ( c) é viável (S é conveo) e é próimo de. Assim, não pode ser um máimo local, que é uma contradição e assim o teorema fica provado. 6
Seja f() uma função de uma única variável. Suponha que f () eiste para todo num conjunto conveo S. Então f() é uma função convea (côncava) em S se e somente se f () 0 (f( ) 0) para todo em S. A prova é dada por um raciocínio semelhante ao Teorema. Como é possível determinar se uma função f(,,..., n ) de n variáveis é convea (côncava) em um conjunto S R n. Vamos assumir que a f tem derivadas parciais de segunda ordem contínuas. Antes do critério para determinar se f é côncava ou convea são necessárias três definições. O Hessiano da função f(,,..., n ) é a matriz nn cujo elemento a ij é dado por: a ij = f/ i j Por eemplo ohessiano da função: f + (, ) = é: 3 + O Hessiano, nesse caso, será: f = H(, ) f Resolvendo, tem-se: f f 6 H(,) = Um i-ésimo menor principal de uma matriz nn é o determinante de qualquer ii matriz obtida eliminando n i linhas e n i colunas da matriz nn. Assim para a matriz: 4 Os primeiros menores principais são - e -4 e o segundo é -(-4)-(-)(-) = 7 O k-ésimo menor principal líder de uma matriz nn é o determinante da matriz kk obtida eliminando as últimas n k linhas e colunas da matriz. 7
Se H k (,,..., n ) representar o k-ésimo menor principal líder da matriz Hessiana avaliada no ponto (,,..., n ), da função: f + 3 (, ) = + Os menores principais líderes serão: H (, ) = 6 H (, ) =.6 -. = - 4 Suponha f(,,..., n ) tem derivadas parciais de segunda ordem contínuas em cada ponto (,,..., n ) S. Então f é uma função convea em S se e somente se para cada S, todos os menores principais de H são não negativos. Mostre que f + (, ) = + É uma função convea em S = R. Tem-se que: (, ) = H Os primeiros menores principais do Hessiano são as entradas da diagonal principal (ambas igual a 0). O segundo menor principal é. -. = 0 0. Assim para qualquer ponto todos os menores principais de H são não negativos. Portanto f(, ) é convea. Suponha que f(,,..., n ) tem derivadas parciais de segunda ordem contínuas em cada ponto (,,..., n ) S. Então f é uma função côncava em S se e somente se para cada S e k =,,..., n, todos os menores principais não nulos tem o mesmo sinal que (-) k. Mostre que f (, ) = É uma função côncava em S = R. 8
Tem-se que: (, ) = H 4 Os primeiros menores principais do Hessiano são as entradas da diagonal (- e -4) que são ambos negativos - (-) k = (-) = -. O segundo menor principal é o determinante de H que é igual a -.-4 (-).(-) = 7 > 0 - (-) k = (-) =. Assim f(, ) é côncava. Mostre que a função f + (, ) = 3 Não é côncava e nem convea. Tem-se que: 3 H(,) = 3 4 Os primeiros menores principais do Hessiano são e 4 ambos positivos assim f não pode ser côncava. O segundo menor principal é o determinante de H que é igual.4 (-3).(-3) = - < 0. Assim f(, ) não pode ser convea. Desse modo essa função não é nem côncava e nem convea Tem-se que: (,, ) = H 3 4 Eliminando linhas (e colunas) e obtém-se o primeiro menor principal de primeira ordem 4 > 0. Eliminado as linhas (e colunas) e 3 do Hessiano obtém-se o segundo menor principal de primeira ordem que é > 0. Eliminado as linhas (e colunas) e 3 do Hessiano obtém-se o terceiro menor principal de primeira ordem que é > 0. Eliminando a coluna e linha do Hessiano encontra-se o primeiro menor principal de segunda ordem: =.4 = 7 > 0 4 Eliminando a linha e a coluna obtémse o segundo menor principal de segunda ordem: =.4 = 7 > 0 4 9
Eliminando a linha 3 e a coluna 3 obtémse o terceiro menor principal de segunda ordem: =. = 3 > 0 O menor principal de terceira ordem é o próprio determinante da matriz Hessiana: = 4 = [.4 ( ).( )] ( )[( ).4 ( )( )] + + ( )[( )( ).( )] = 4 5 3 = 6 > 0 Como para todos os pontos (,, 3 ) todos os menores principais do Hessiano são não negativos mostrou-se que a f(,, 3 ) é uma função convea em R 3. BERTSEKAS, Dimitri P. Nonlinear Programming. Belmont (MA): Athena Scientific, 995. WISTON, Wayne L. Operations Research: Applications and Algorithms. 3 ed. Belmont(CA): Dubury Press, 994. 0