Lorí Viali Licenciatura Plena em Matemática UFRGS Bacharelado em Matemática UFRGS Especialização em Formação de Pesquisadores PUCRS Mestrado em Engenharia de Produção (PO) UFSC Doutorado Sanduíche na USF (University of South Florida) Doutorado em Engenharia de Produção (IA) UFSC Afiliação Professor Titular do Departamento de Estatística Faculdade de Matemática da PUCRS viali@pucrs.br http://www.pucrs.br/famat/viali/ Professor Adjunto do Departamento de Estatística do Instituto de Matemática da UFRGS. viali@mat.ufrgs.br http://www.mat.ufrgs.br/~viali/ da Para qualquer matriz A, a notação a ij indica o elemento da linha i e coluna j. Para duas matrizes A e B de dimensões compatíveis (AB) = B A Se A é uma matriz quadrada diremos que A é simétrica se A = A. Uma matriz A é diagonal se a ij = 0 sempre que i j. Ela é uma triangular inferior se a ij = 0 para i < j. Ela é triangular superior se sua transposta for triangular inferior. I representa a matriz identidade e det(a) representa o determinante de A. Definição Dada uma matriz mm A a matriz mm B é sua inversa se e somente se BA = AB = I.
Associado a qualquer matriz quadrada A eiste um número denominado de determinante de A (abreviado por det A ou A ). Assim se A = [a ] é matriz, então o determinante de A é a = a. Para uma matriz a A = a a a O determinante é dado por: deta = a a a a. Antes de calcular o determinante de matrizes de ordem mais alta é necessário definir o conceito de menor de uma matriz. Se A é uma matriz de ordem mn então para quaisquer dois valores i, j m, o M ij menor de A é a sub-matriz obtida de A eliminando-se a linha i e a coluna j. Seja A uma matriz mm com m > então o determinante de A é dado por: A = (-) i+ a i M i + (-) i+ a i M i +... + + (-) i+m a im M im Essa fórmula é denominada de epansão do deta pelos cofatores da linha i. Calcular o determinante pela epansão dos cofatores da seguinte matriz: 3 5 6 7 8 9 O determinante é: 5 7 8 3 5 6 = ( ).. 8 9 6 3 6 + ( ).. + ( ).3. 9 7 9 7 = (5 8) (36 ) + 3(3 35) = 3 + 9 = 0 5 = 8
Se AX = B, então: A - (AX) = A - B (A - A)X = A - B IX = A - B X = A - B 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 (PPNL) 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 3
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 depontoviável(pv) e um ponto fora da região é denominado deponto Inviá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 elunidades 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$,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 vértice. D é a solução ótima sobre a região viável formada pelo triângulo ABE. l 8 E A D B ma z = cl s. a c + l 8 c, l 0 c cl = 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 é um ponto de 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( ). 5
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 Para um PPL (maimização), qualquer mínimo local é uma solução ótima do problema (Porquê?). Para um PPNL isso não é máimo local é denominado de local, necessariamente verdadeiro. Por eemplo, relativo ouetremo. considere o seguinte PPNL: ma z = f() s.a 0 0 onde f() é apresentada na figura da próima lâmina. Note que os pontos A, B e C são Um máimo local pode não ser uma solução ótima de um PPNL. z A B C 0 z = f() máimos locais mas C é a única solução ótima do problema. Seja f(,,..., n ) uma função definida para todos os pontos (,,..., n ) de um conjunto conveo S. A função f é convea se para qualquer S e S. f[c + ( c) ] cf( ) + ( c)f( ) para 0 c. 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. 6
Considerando as definições anteriores pode-se verificar que uma função f(,,..., n ) é convea se e somente -f(,,..., n ) é côncava e viceversa. Para 0, f() = e g() = e são funções conveas e f() = / é uma função côncava. Favor verificar (graficamente e analiticamente)! y y = f() C A 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 consequência de: f[c + ( c) ] = a[c + ( c) ] + b = = c(a + b) + ( c)(a + b) = = cf( ) + ( - c)f( ) 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. 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. 7
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. OHessiano 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(, y) = 3 + y + y é: OHessiano, nesse caso, será: f = H(, ) f Resolvendo, tem-se: f f H(, y) = 6 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: Os primeiros menores principais são - e - e o segundo é -(-)-(-)(-) = 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. Se H k (,,..., n ) representar o k-ésimo menor principal líder da matriz Hessiana avaliada no ponto (,,..., n ), da função: f(, y) = 3 + y + y Os menores principais líderes serão: H (, y) = 6 H (, y) =.6 -. = - 8
Suponha f(,,..., n ) tem derivadas parciais de segunda ordem contínuas em cada ponto (,,..., n ) S. Então f é uma função convea emsse e somente se para cada S, todos os menores principais de H são não negativos. Mostre que: f(, y) = + y + y É uma função convea em S = R. Tem-se que: H(, y) = 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(, y) é 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(, y) = - y y É uma função côncava em S = R. Tem-se que: H(, y) = Os primeiros menores principais do Hessiano são as entradas da diagonal (- e -) que são ambos negativos e (-) k = (-) = -. O segundo menor principal é o determinante de H que é igual a -.- (-).(-) = 7 > 0 e (-) k = (-) =. Assim f(, y) é côncava. 9
Mostre que a função: f(, y) = -3y + y Não é côncava e nem convea. Tem-se que: H(, y) = 3 3 Os primeiros menores principais do Hessiano são e ambos positivos assim f não pode ser côncava. O segundo menor principal é o determinante de H(, y) que é igual:. (-3).(-3) = - < 0. Assim f(, y) não pode ser convea. Desse modo essa função não é nem côncava e nem convea Verifique se a função: Tem-se que: H(, y,z) = f(, y, z) = + y + z y z yz, é côncava, convea ou nem côncava e nem convea. Eliminando linhas (e colunas) e obtém-se o primeiro menor principal de primeira ordem > 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: =. = 7 > 0 Eliminando a linha e a coluna obtémse o segundo menor principal de segunda ordem: =. = 7 > 0 0
Eliminando a linha 3 e a coluna 3 obtém-se o terceiro menor principal de segunda ordem: =. = 3 > 0 O menor principal de terceira ordem é o próprio determinante da matriz Hessiana: = = [. ( ).( )] ( )[( ). ( )( )] + + ( )[( )( ).( )] = 5 3 = 6 > 0 Como para todos os pontos (,, 3 ) todos os menores principais do Hessiano são não negativos, tem-se que a f(, y, z) é uma função convea em R 3. BERTSEKAS, Dimitri P. Nonlinear Programming. Belmont (MA): Athena Scientific, 995. HILLIER, Frederick S., LIEBERMAN, Gerald J. Introdução à Pesquisa Operacional. São Paulo: McGraw-Hill, 006. 88 p. SALVENDRY, Gavriel (Editor). Handbook of Industrial Engineering. New York (NY): John Wiley & Sons/Institute of Industrial Engineers. 00. 796 p. WISTON, Wayne L. Operations Research: Applications and Algorithms. 3 ed. Belmont (CA): Dubury Press, 99. viali@pucrs.br