You are on page 1of 181

OTIMIZAO DE PROCESSOS

Prof. Dr. Ricardo de Arajo Kalid kalid@ufba.br Programa de Engenharia Industrial da Escola Politcnica da UFBA

Escola Politcnica UFBA

2 CURRCULO DO INSTRUTOR
Ricardo de Arajo Kalid, D. Sc. 04/09/64 kalid@ufba.br (0xx71) 203.9811 / 9984.3316 Prof. Depto Engenharia Qumica da UFBA Graduao em Engenharia Qumica UFBA (88) Mestrado em Engenharia Qumica - UFBA (91) Doutorado em Engenharia Qumica USP (99)

REAS DE ATUAO E LINHAS DE PESQUISA Modelagem e simulao em regime estacionrio e transiente de processos Identificao de processos Controle de processos Otimizao de processos Sntese de redes de transferncia de calor e massa OUTROS Professor do Mestrado em Engenharia Qumica da UFBA e do Mestrado em Produo Limpa Professor (anos 92 e 93) do Curso de Especializao em Instrumentao e Controle (CEINST) promovido pelo Departamento de Engenharia Mecnica da UFBA Professor de Cursos de Educao Continuada (Controle Avanado, Controle Preditivo Multivarivel, Identificao de Processos, Otimizao de Processos Qumicos, Controle de Colunas de Destilao) para DOW, PETROBRAS, GRIFFIN, EDN, CIQUINE, OXITENO, COPENE. Professor (98) do Curso de Especializao em Automao de Sistemas Industriais (CEASI) promovido pelo Depto de Engenharia Eltrica da UFBA Professor e Coordenador (99) do Curso de Especializao em Controle e Automao de Processos Industriais (CECAPI) promovido pelos Depto de Engenharia Qumica e Eltrica da UFBA Professor e Coordenador (2000 a 2002) do Curso de Especializao em Instrumentao, Automao, Controle e Otimizao de Processos Contnuos (CICOP 1 e 2 turmas) promovido pelo Depto de Engenharia Qumica e UFBA e AINST. Coordenador do II e do III Seminrio Nacional de Controle e Automao (II SNCA-2001 e III SNCA-2003) PROJETOS COOPERATIVOS E/OU CONSULTORIAS PARA INDSTRIAS MONSANTO-GRIFFIN-POLITENO: sntese de redes de transferncia de calor e massa DETEN: simulao do reator radial para desidrogenao de parafinas EDN: participou da equipe de desenvolvimento do plano diretor de automao BRASKEM-UNIB: identificao de processos, sintonia de controladores industriais, simulao, controle e otimizao do conversor de acetileno da ETENO II (em andamento) PDAI-BA - Programa de Desenvolvimento da Automao Industrial, participantes: UFBA, UNIFACS, CEFET-BA, CETIND-SENAI, FIEB, SEPLANTEC, PETROBRAS, NITROCARBONO, DETEN, OXITENO, OPP, POLIBRASIL, POLITENO, BRASKEM-UNIB GRIFFIN: Sistema de controle de pH. Modelagem e Otimizao do Reator de DCA BRASKEM-UNIB-POLITENO-UFBA: Diagnstico de Malhas de Controle Preditivo Multivarivel (MPC) BRASKEM-UNIB -UFBA: projeto de produo + limpa para minimizao/reuso de guas industriais INDICADORES DE PRODUO CIENTFICA Trabalhos apresentados em congressos ou seminrios: 12 Trabalhos publicados em peridicos: 2 Dissertao de mestrado (1) e 2 tese de doutorado (1) defendidas e aprovadas: Participao de bancas de mestrado (5) e de doutorado (1): 6 Orientao de Iniciao Cientfica e Tecnolgica 17 (concludas) e 3 em andamento Orientao de Dissertaes de Mestrado: 8 (em andamento), 3 concludas

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

3 Trabalhos em desenvolvimento em parceria com indstrias:


N Tema Maximizao do desempenho de malhas de controle PID da POLICARBONATOS Equipe Ascnio Pepe Marcelo Coutinho Marcelo Embiruu Ricardo Kalid Jean Carlos Sebastio Joo Colonese Nelson Siem Velarde Silvia Arajo Breno Silva Ivan Moraes Jos Luis Asher Kiperstok Jos Geraldo Pacheco Emerson Sales Ednildo Torres Ricardo Kalid Moiss Augusto Joo Severiano Asher Kiperstok Jos Geraldo Pacheco Emerson Sales Ricardo Kalid Nadja Fontes Csar Moares Mauricio Moreno Mrcia Cunha Lcio Estrella Ricardo Muller Jean Carlos Marcelo Embiruu Ricardo Kalid Mauricio Moreno Fbio Carrilho Ricardo Kalid Mauricio Moreno Fbio Carrilho Ricardo Kalid Instituio POLICARBONATOS UFBA POLITENO GRIFFIN MONSANTO CARABA METAIS Em desenvolvimento Status Em desenvolvimento

18

17

Reuso/reciclo e conservao de gua e energia: redes de transferncia de calor e massa

UFBA

BRASKEM-UNIB Em desenvolvimento

16

Minimizao/reuso de guas industriais BRASKEM-GUA

UFBA

BRASKEM-UNIB

15

Diagnstico de malhas de controle preditivo multivariavel MPC

POLITENO

Em desenvolvimento

UFBA

14

"Plantwide control" de um trem de separao de xilenos (3 colunas de destilao em srie/paralelo) da BRASKEM

BRASKEM-UNIB UFBA

Em desenvolvimento

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

4 Trabalhos concludos em parceria com indstrias:


N 13 Tema Otimizao da fonte de fsforo da MONSANTO Equipe Lucy Helena de Jesus Daniel Cortes Jos Geraldo Pacheco Wagner Mnaco Viviane Scaranto Ricardo Kalid Klauss Villalva Serra Almir Viana Cotias Ricardo Kalid Nelson Siem Velarde Ricardo Kalid Cathia R. Apenburg Williane Carneiro Ricardo Kalid BRASKEM-UNIB DETEN SENAI-CETIND NITROCARBONO CEFET-BA Paulo Guimares Adhemar de Barros Herman Lepikson Ricardo Kalid Mark Langerhost Lueci V. do Vale Ricardo Kalid Mauricio Moreno Paulo Freitas Fabrcio Brito Ricardo Kalid Kleber Leite Mrcio Barreto Charles Diament Ricardo Kalid Herman Lepikson Cayubi Alves da Costa Francisco Teixeira Ricardo Kalid Instituio MONSANTO UFBA CIQUINE UFBA GRIFFIN UFBA GRIFFIN UFBA BRASKEM-UNIB UFBA PETROBRAS POLITENO OXITENO POLIBRASIL BRASKEM-OPP UNIFACS UFBA BRASKEM-UNIB UFBA BRASKEM-UNIB Concludo UFBA Concludo Concludo Concludo Status Concludo

12

Otimizao de colunas de destilao da CIQUINE Projeto e sintonia do controlador de topo da coluna de destilao de 3,4 DCA da GRIFFIN Projeto e sintonia do sistema de controle de pH dos efluentes da GRIFFIN Simulao e controle de colunas de destilao de sulfolane da BRASKEM

11

Concludo

10

09

Concludo

08

Plataforma de Automao Industrial do Estado da BAHIA

Concludo

07

Simulao e controle de colunas de destilao de BTX da BRASKEM

06

Modelagem, simulao, controle e otimizao de conversores de acetileno da BRASKEM

05

Otimizao da operao do reator de polimerizao em baixa carga

BRASKEM-OPP UFBA EDN

Concludo

04

Plano diretor de automao da ESTIRENO

UFBA

Concludo

03

Murilo F. de Amorim Estimativa do tempo de campanha de fornos de Eliane Santanta pirlise da BRASKEM Ricardo Kalid Modelagem por redes neurais hbridas e otimizao de reatores de CPD Modelagem, simulao do reator de desidrogenao de n-parafinas da DETEN Luiz Alberto Falcon Tatiana Freitas Ricardo Kalid Gian Carlo Gangemi Ricardo Kalid

BRASKEM-UNIB UFBA BRASKEM-UNIB UFBA DETEN UFBA Concludo Concludo

02

01

Concludo

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

5 INSTRUTOR: RICARDO KALID - kalid@ufba.br Cursos e apostilas sobre MODELAGEM DE PROCESSOS 1. Operaes Unitrias em Regime Transiente Balanos de Massa, Energia e Momentum Aplicados a Processos Qumicos. 2. Identificao de Processos Qumicos.

SIMULAO DE PROCESSOS 3. Mtodos Numricos e Simulao de Processos. 4. Programao em MATLAB com Aplicao em Reatores Qumicos.

CONTROLE DE PROCESSOS 5. Sistemas de Controle dos Principais Equipamentos da Indstria de Processos Qumicos e Petroqumicos. 6. Controle de Processos Qumicos. 7. Definio da Estrutura do Sistema de Controle Multimalha de Processos Multivariveis. 8. Controle Avanado de Processos Estratgias Clssicas de Controle. 9. Controle de Coluna de Destilao. 10. Controle Preditivo Multivarivel: DMC - Controle por Matriz Dinmica. 11. Sintonia tima de Controladores Industriais

OTIMIZAO DE PROCESSOS 12. Otimizao de Processos Qumicos sem restries 13. Otimizao de Processos Qumicos com restries 14. Otimizao de Processos Qumicos a batelada

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

OTIMIZAO DE PROCESSOS
ndice
Lista de Abreviaturas ............................................................................................6 Nomenclatura ........................................................................................................7 Principais Referncias Bibliogrficas .................................................................7 1. 1.1. 1.2. 1.3. 1.4. 1.5. 1.6. 1.6.1. 1.6.2. 1.6.3. 1.6.4. 1.7. 1.7.1. 1.7.2. 1.8. 2. 2.1. 2.2. 2.3. 2.4. 2.5. 2.6. 2.7. 2.8. Introduo e Definies .................................................................................... 12 Objetivos deste Curso ................................................................................... 12 Programa do Curso ....................................................................................... 13 Referncias Bibliogrficas Principais ........................................................... 14 Por que Otimizar? ......................................................................................... 14 Exemplos de Aplicao de Otimizao ........................................................ 15 Formulao de um Problema de Otimizao ................................................ 15 A Funo Objetivo (FO) .......................................................................... 16 As Restries ........................................................................................... 18 A Regio Vivel ...................................................................................... 19 As Variveis de Deciso (VD) ................................................................ 20 Procedimento Geral para Solucionar um Problema de Otimizao ............. 20 Mapeamento da Funo Objetivo ............................................................ 21 Obstculos Otimizao ......................................................................... 25 Exerccios...................................................................................................... 27 Conceitos Matemticos ..................................................................................... 28 Definies ..................................................................................................... 28 Operaes Bsicas com Matrizes e Vetores ................................................. 29 Independncia Linear, Matriz Singular e Rank ou Posto de uma Matriz ... 32 Operadores Linha ou Coluna ........................................................................ 33 Soluo de Sistema de Equaes Lineares ................................................... 33 Graus de Liberdade ....................................................................................... 34 Autovalores e Autovetores............................................................................ 34 Estudo de Funo .......................................................................................... 35
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

7 2.9. 2.10. 2.11. 2.12. Continuidade de Funes .............................................................................. 37 Funes Unimodais e Multinodais ............................................................... 38 Funes Cncavas e Convexas ..................................................................... 38 Regio Convexa ............................................................................................ 41

2.13. Condies Necessrias e Condies Suficientes para um Extremo de uma Funo Irrestrita ....................................................................................................... 44 2.14. Interpretao da Funo Objetivo em Quadrtica 47 2.15. 3. 3.1. 3.1.1. 3.1.2. 3.1.3. 3.1.4. 3.2. 3.3. 3.4. 4. 4.1. 4.1.1. 4.1.2. 4.1.3. 4.2. 4.2.1. 4.2.2. 4.2.3. 4.3. 4.4. 5. 5.1. 5.1.1. 5.1.2. 5.1.3. 5.1.4. Termos de uma Aproximao

Exerccios...................................................................................................... 51 A Funo Objetivo (FO) ............................................................................... 55 Tolerncia ou Critrio de Parada ............................................................. 56 Objetivos Econmicos ............................................................................. 57 Objetivos Operacionais ........................................................................... 64 Combinao de Objetivos Operacionais com Objetivos Econmicos .... 69 As Funes de Restrio (FR) ...................................................................... 69 Otimizao On-Line ..................................................................................... 70 Exerccios...................................................................................................... 72

Formulao Matemtica de um Problema de Otimizao ........................ 54

Otimizao Unidimensional Sem Restries (OUSR) ............................... 79 Mtodos Indiretos (MI) para OUSR ............................................................. 80 Mtodo de Newton .................................................................................. 81 Mtodo de Quasi-Newton........................................................................ 83 Mtodo da Secante .................................................................................. 84 Mtodos Diretos (MD) para OUSR .............................................................. 85 Mtodos por Diminuio da Regio de Busca ........................................ 85 Mtodos por Aproximao Polinomial - Interpolao Quadrtica.......... 87 Mtodos por aproximao polinomial - Interpolao cbica .................. 88 Avaliao dos Mtodos Unidimencionais de Otimizao ............................ 89 Exerccios...................................................................................................... 91 Otimizao Multidimensional Sem Restries (OMSR) ............................ 92 Mtodos Indiretos (MI) para OMSR ............................................................ 93 Mtodo do Gradiente ou Mtodo do Gradiente Descendente ................. 94 Mtodo do Gradiente Conjugado ............................................................ 96 Mtodo de Newton .................................................................................. 97 Mtodo de Levenberg-Marquardt............................................................ 98
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

8 5.1.5. 5.2. 5.2.1. 5.2.2. 5.2.3. 5.2.4. 5.3. 5.4. 6. Mtodo da Secante ou Quasi-Newton ..................................................... 99 Mtodos Diretos (MD) para OMSR ........................................................... 102 Busca Randmica .................................................................................. 102 Grade de Busca ...................................................................................... 103 Busca Unidimensional ........................................................................... 103 Mtodo Simplex ou do Poliedro Flexvel .............................................. 104 Avaliao dos MD's e MI's para Problemas de OMSR .............................. 105 Exerccios.................................................................................................... 106 Ajuste de Modelos Matemticos ................................................................... 108 6.1. Ajuste de Modelos Lineares nos Parmetros Com Uma Varivel Independente.................................................................................................................. 109 6.1.1. 6.1.2. 6.2. 6.3. Escolha da Forma do Modelo Linear .................................................... 110 Ajuste do Modelo Linear Univarivel ................................................... 111 Ajuste de Modelos Lineares de Vrias Variveis ....................................... 113 Ajuste de Modelos Matemticos No-Lineares .......................................... 116 6.3.1. Ajuste de Modelos por Mtodos Diretos - Mtodo do Poliedro Flexvel 117 6.3.2. 6.4. 6.4.1. 6.5. 7. 7.1. 7.2. 7.3. 7.4. 7.5. 8. 8.1. 8.2. 8.3. 8.4. 9. 9.1. 10. Ajuste de Modelos por Mtodos Indiretos ............................................ 118 Observaes e "Macetes"............................................................................ 118 Procedimento Geral para Ajuste de Modelos ........................................ 120 Exerccios.................................................................................................... 121 Programao Linear (PL) ................................................................................ 126 Convertendo Problemas para a Forma Padro da PL ................................. 129 A Dualidade em Programao Linear. ........................................................ 130 Anlise de Sensibilidade em PL ................................................................. 131 Programao Linear Sucessiva (PLS)......................................................... 132 Exerccios.................................................................................................... 133 Multiplicadores de Lagrange.......................................................................... 134 Anlise de Sensibilidade por Multiplicadores de Lagrange ....................... 138 Condies de Kuhn-Tucker - CKT ............................................................. 139 Vantagens e Desvantagens dos Multiplicadores de Lagrange .................... 140 Exerccios.................................................................................................... 140 Funo Penalidade ........................................................................................... 143 Exerccios.................................................................................................... 147 Programao Quadrtica - PQ ....................................................................... 148
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

9 10.1. 10.2. 11. 11.1. 11.2. 11.2.1. 11.3. 12. 12.1. 12.2. 13. 13.1. Programao Quadrtica Sucessiva - PQS ................................................. 150 Exerccios.................................................................................................... 152 Relao entre o GRG e os Multiplicadores de Lagrange ........................... 154 Algoritmo do Gradiente Reduzido Generalizado ....................................... 156 Listagem do Programa GRG para o Exemplo 11.1 ............................... 162 Exerccios.................................................................................................... 172 Branch and Bound Technique..................................................................... 173 Exerccios.................................................................................................... 176 Algoritmos para o Problema de Controle timo ........................................ 178

Gradiente Reduzido Generalizado -GRG .................................................... 153

Programao Inteira e Mista - PIM ................................................................ 173

Controle timo - CO ......................................................................................... 177

Apndice I: Controle timo de um Reator a Batelada Apndice II: Reprodues de pginas do livro Process Analysis by Statistical Methods. Himmelblau, D. M.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

10

Lista de Abreviaturas
CKT CO FO FR MD MI MV OMCR OMSR OUCR OUSR PCO PL PNL PPL PPNL PPQ PQ PV s.a. SP VA VD VDep VI Condies de Kuhn-Tucker Controle timo Funo Objetivo Funes de Restries Mtodo Direto de otimizao Mtodo Indireto de otimizao Varivel Manipulada Otimizao Multidimensional Com Restries Otimizao Multidimensional Sem Restries Otimizao Unidimensional Com Restries Otimizao Unidimensional Sem Restries Problema de Controle timo Programao Linear Programao No-Linear Problema de Programao Linear Problema de Programao No-Linear Problema de Programao Quadrtica Programao Quadrtica

- Varivel de Processo (pode ser variveis controladas e/ou medidas) sujeito a Sistema de Equaes Algbricas No-Lineares SetPoint Varivel Auxiliar (qualquer varivel ou constante que no VDep) Varivel de Deciso ou de Projeto ou Independente Varivel Dependente Varivel Independente

SEANL -

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

11

Nomenclatura
Y i - valor da mdia dos experimentos replicados para um certo xi

x
bj n pi x Y Y

- valor mdio da varivel independente - parmetro j de um modelo - nmero total de experimentos realizados - nmero de medidas replicadas para um certo xi - varivel determinstica, independente e experimental - varivel estocstica, dependente e experimental - varivel estocstica, dependente e experimental

i - valor calculado da VI para um certo xi

Principais Referncias Bibliogrficas


As principais referncias utilizadas para confeccionar esta apstila e preparar as aulas so listadas a seguir. Outras referncias, que tratam de assuntos especficos, so citadas ao longo do texto: R1. Himmelblau, D. M. and Edgar, T. F.; Optimization of Chemical Process. McGraw-Hill, 1989. Livro essencial para quem quer iniciar e/ou aprofundar seus estudos sobre otimizao de processos qumicos. Boa parte do contedo deste curso e a maioria dos exerccios discutidos/propostos foram retirados deste livro. R2. Himmelblau, D. M.; Process Analysis by Statistical Methods. Jonh Wiley & Sons, 1970. Livro que traz os algoritmos de vrios mtodos de otimizao e aplica esses mtodos principalmente ao ajuste de modelos matemticos a dados experimentais. Livro texto para o Captulo 6 desta apostila. R3. Beveridge, G. S. and Schehter, R. S.; Optimization Theory and Practice. McGraw-Hill, 1970. Traz uma discusso mais profunda a respeito dos fundamentos matemticos em que os mtodos de otimizao so baseados. R4. Reklaitis, G. V.; Ravindran, A.; Ragsdell, K. M.; Engineering Optimization: Methods and Applications. Jonh Wiley & Sons, 1983. Livro importante e complementar ao de Himmelblau e Edgar (R1). Livro texto para os Captulo 8 e 9 desta apostila.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

12

1. Introduo e Definies
Na natureza somente os mais eficientes sobrevivem. A seleo natural elimina as espcies ou os indivduos menos capacitados, ao mesmo tempo que facilita as coisas para os mais bem dotados, ou seja, existe algum mecanismo que procura maximizar o uso dos recursos ou minimizar o efeito da ineficincia dos processos. O que a natureza sabe fazer com extrema maestria ns devemos imitar, se quisermos suplantar nossos adversrios e assim sermos os ganhadores. O problema que seja qual for o vencedor, a me natureza sempre ganha junto, enquanto ns temos que ser mais eficientes que nossos concorrentes. E como a probabilidade de tomar uma deciso errada muito maior que escolher a opo certa, temos que nos cercar de informaes e procedimentos confiveis. As informaes que devemos coletar so, por exemplo: o(s) objetivo(s) que queremos atingir, as condies do mercado fornedor e consumidor, as condies do mercado financeiro, as condies dos recursos naturais e humandos disponveis, as limitaes de natureza fsica e/ou social e/ou psicolgicas existentes. Os procedimentos que podemos empregar so: a experincia acumulada, o uso de ferramentas matemticas adequadas, a escolha de estratgias de atuao oportunas. Se utilizarmos as informaes e procedimentos apropriados temos boas chances de sermos os vitoriosos. somente esse o nosso problema. Neste curso iremos estudar quais so as informaes e procedimentos adequados a resolver os os problemas de otimizao tpicos em engenharia qumica.

1.1.

Objetivos deste Curso

Ao final do segundo mdulo deste curso seremos capazes de: O1. Entender os princpios de funcionamento dos pricipais algoritmos de otimizao. O2. Aplicar corretamente os algoritmos de otimizao. O3. Desenvolver um modelo matematico de otimizao e resolv-lo atravs da utilizao de pacotes computacionais.
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

13

1.2.

Programa do Curso

Para alcanarmos os objetivos propostos o curso ter as seguintes caractersticas: Carga horria total: 60 horas Programa do curso: P1. Introduo e Definies: Viso geral do problema de otimizao. P2. Conceitos Matemticos: Ferramentas necessrias. P3. Formulao Matemtica de um Problema de Otimizao: Construo da Funo Objetivo e de Suas Restries. P4. Otimizao Unidimensional especficos. Sem Restries: Aspectos matemticos

P5. Otimizao Multidimensional Sem Restries: Aspectos matemticos especficos. P6. Aplicaes de Otimizao Sem Restries em Processos Qumicos. P7. Otimizao Multivarivel Com Restries. P8. Aplicaes de Otimizao Multivarivel Com Restries em Processos Qumicos. P9. Experincias em Otimizao de Processos Qumicos do LACOI: a) Reconciliao de dados em estado estacionrio b) Minimizao de uso de gua e/ou consumo de energia em processos c) Otimizao de processos industriais: Case MONSANTO Case CIQUINE Case BRASKEM-UNIB Case BRASKEM-OPP Metodologia de ensino: M1.Utilizaremos de data-show e da lousa para desenvolver os tpicos. M2.Exerccios resolvidos para exemplificar os conhecimentos tericos abordados. M3.Aulas de exerccios para as equipes (2 alunos por equipe). M4.Lista de exerccios propostos. M5.Distribuio de apstila com o contedo do que foi apresentado. M6.Sempre que necessria haver interrupo da aula para esclarecimento de dvidas. M7.Estudo de cases industriais que sejam de intresse dos alunos

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

14

1.3.

Referncias Bibliogrficas Principais

As pricncipais referncias utilizadas para confeccionar esta apstila e preparar as aulas so listadas a seguir. Outras referncias, que tratam de assuntos especficos so citadas ao longo do texto: R1. Himmelblau, D. M. and Edgar, T. F., Optimization of Chemical Process, McGraw-Hill, 1989. Livro essencial para quem quer iniciar e/ou aprofundar seus estudos sobre otimizao de processos qumicos. Boa parte do contedo deste curso e a maioria dos exerccios discutidos/propostos foram retirados deste livro. R2. Himmelblau, D. M., Process Analysis by Statistical Methods, Jonh Wiley & Sons, 1970. Livro que traz os algoritmos de vrios mtodos de otimizao e aplica esses mtodos principalmente ao ajuste de modelos matemticos a dados experimentais. R3. Beveridge, G. S. and Schehter, R. S., Optimization Theory and Practice, McGraw-Hill, 1970. Traz uma discusso mais profunda a respeito dos fundamentos matemticos em que os mtodos de otimizao so baseados. Alm dessas referncias outras so listadas no final desta apstila.

1.4.

Por que Otimizar?

A otimizao pode promover melhorias econmicas [otimizao econmica (OE)] e/ou tcnicas/operacionais [otimizao operacional (OO)]. A otimizao de um determinado processo ou sistema pode ter como benefcio um (ou mais de um) dos itens a seguir: OE. minimizar o investimento para uma determinada capacidade operacional a ser instalada, OE. maximizar o lucro total, OE. maximizar o lucro por unidade de produo, OE. minimizar os custos operacionais, OE. minimizar os custos de manuteno, OO. maximizar a produo para uma determinada capacidade operacional instalada, OO. minimizar o consumo de matria-prima e/o energia, OO. minimizar a produo de insumos indesejveis, OO. minimizar o tempo de batelada, OO. minimizar a diferena entre o valor desejado e o valor alcanado, Observe que alguns desses objetivos so conflitantes entre si, portanto devemos estabelecer o objetivo a ser alcanado com bastante cuidado. Porm devemos sempre nos lembrar que a otimizao tem um custo e, portanto, devemos otimizar a otimizao.
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

15 Em certos casos o uso de mtodos matemticos de otimizao no traz benefcios, por exemplo: quando uma soluo razovel pode ser obtida baseada em experincias passadas, quando existe uma prtica padro em uso, quando o tempo necessrio para avaliar o problema no contribui para o contexto do projeto global, quando as informaes necessrias s podem ser obtidas com grande custo.

1.5.

Exemplos de Aplicao de Otimizao

A otimizao pode ser aplicada de inmeras maneiras em processos e plantas qumicas. Tpicos projetos onde a otimizao tem sido empregada incluem: 1. Determinao do melhor local para construo de uma planta. 2. Escalonamento de tanques para armazenagem de matria-prima e de produtos. 3. Dimensionamento e layout de pipelines. 4. Projeto de plantas e/ou de equipamentos. 5. Escalonamento de reposio e manuteno de equipamentos. 6. Operao de equipamentos e/ou plantas. 7. Ajuste de modelos a dados experimentais de uma planta. 8. Minimizao de inventrio. 9. Alocao de recursos ou servios entre diferentes processos. 10.Planejamento e escalonamento de instalao de plantas.

1.6.

Formulao de um Problema de Otimizao

Podemos definir# a otimizao de sistemas das seguintes maneiras: D1. Campo da matemtica dedicado ao desenvolvimento de mtodos eficientes de determinao de mximos e mnimos de funes de uma ou mais variveis. D2. A cincia que determina as melhores solues para certos problemas fsicos; problemas que so descritos por modelos matemticos.

As trs definies foram transcritas da apstila sobre "Otimizao de Processos" de autoria de Fernando Pellegrini Pessoa e Marcelo Castier, ambos professores do DEQ-UFRJ Ricardo Kalid - Otimizao de Processos kalid@ufba.br

16 D3. Busca da melhor soluo (soluo tima) dentre as diversas solues possveis de um problema, segundo um critrio estabelecido previamente. Embora nem todos os problemas de otimizao possam ser descritos por equaes matemticas (por exemplo, maximizar as propriedades organolpticas de um alimento), apenas os que podem sero tratados neste curso. A formulao de um problema prtico de otimizao contm duas partes: 1. Ao menos uma funo objetivo a ser alcanada. 2. As restries que devem ser atendidas. Devemos encontrar uma soluo (pois podem existir mais) que minimiza/maximiniza a funo objetivo e que simultaneamente atenda s restries, ou seja a soluo encontrada deve pertecer regio vivel. Para que as condies timas sejam alcanadas o sistema deve ter liberdade para manipular as variveis de deciso, tambm denominadas variveis de projeto ou ainda variveis independentes, isto , algumas condies operacionais so modificadas de forma que o ponto timo vivel seja alcanado.

1.6.1.

A Funo Objetivo (FO)

A funo objetivo ou critrio de desempenho estabelece o alvo a ser alcanado. uma funo matemtica cujo mximo ou mnimo se deseja determinar. As FO's podem ser desenvolvidas a partir de trs tipos de critrios: C1. Critrio estritamente econmico: maximizar o lucro anual, minimizar o custo anual, diminuir o tempo de retorno do investimento, etc. C2. Critrio estritamente tcnico/operacional: minimizar o consumo de energia ou de matria-prima, maximizar a produo, etc. C3. Critrio tcnico-econmico: minimizar a diferena entre o valor desejado e o valor medido numa planta, ao mesmo tempo em que minimiza o custo operacional. O estabelecimento correto da funo objetivo fundamental para o sucesso da otimizao. Sua determinao uma tarefa complexa que requer grande conhecimento do processo/sistema a ser otimizado. A funo objetivo pode ser classificada quanto : Continuidade: contnua, por exemplo a temperatura tima para uma reao reversvel descontnua discreta, por exemplo o dimetro timo de uma tubulao
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

17 Modalidade:
a = 4; b = 2; c = 5; y1= -a*x.^2 + b*x + c; plot(x,y1)
0.5 0 -0.5 -1 -1.5 -2 -2.5 -3 -3.5 -4 -4.5 -100 -50 0 50 100 x 10
4

unimodal (o extremo local tambm o global), figura 1-a.

x = -100:100;

Figura 1-A: Funo Unimodal Funo objetivo (FO): max y 1 y 1 = a. x 2 + b. x + c Equao 1.6-A
max(y1) ans = 5

Obs: expresses

nesta fonte so comandos do MATLAB.

(Courier New

New 10,

10,

verde, so

em as

negrito) respostas

expresses nesta fonte geradas pelo MATLAB.

(Courier

azul)

as expresses nesta fonte (Times New Roman 12, preto) so textos em WORD. Comando help nome-da-funo permite consultar o manual de referncia on-line do MATLAB. Comando help optim permite consular o manual de referncia do toolbox de otimizao on-line do MATLAB.

multimodal (existem vrios extremos locais e um deles o global)


Ricardo Kalid - Otimizao de Processos kalid@ufba.br

18
y2 = -a*x.^2 + b*x + c + 1000*sin(x); plot(x,y2,'-r',x,y1,':b')
0.5 0 -0.5 -1 -1.5 -2 -2.5 -3 -3.5 -4 -4.5 -100 -50 0 50 100 x 10
4

Figura 1-B: Funo Unimodal e Multimodal Funo objetivo (FO):


max(y2) ans = 902.2974

maximizar y2

Convexidade: convexa, a funo objetivo uma funo convexa (tem um nico mnimo) cncava, a funo objetivo uma funo cncava (tem um nico mximo)

1.6.2.

As Restries

So os limites impostos ao sistema pelas condies fsicas, por exemplo: capacidade mxima de processamento de um equipamento, temperatura e presso absolutas s podem assumir valores positivos, os balanos de massa e energia de um processos devem ser obedecidos, capacidade de absoro do mercado, preo mximo de venda ou de compra, etc. As restries podem ser de igualdade ou de desigualdade.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

19 O modelo matemtico (em regime estacionrio ou transiente) de um processo uma restrio de igualdade.

1.6.3.

A Regio Vivel

Regio do espao definida pelas variveis de deciso, delimitada pelas restries, em cujo interior ou na fronteira se localiza o mximo ou o mnimo da funo objetivo. Tambm denominada de regio de busca. O conjunto das restries determinam uma regio onde o ponto timo deve estar contido. Portanto a regio vivel deve ser um espao no nulo. Por exemplo: regio vivel nula: regio vivel: x > 50 e x < 10 x > 10 e x < 50

Exemplo; Funo objetivo:

max y1
x

y1 = a. x 2 + b. x + c
Equao 1.6-B

Sujeito a:

10 < x < 20

x = 10:20; y1= -a*x.^2 + b*x + c; plot(x,y1)


-200 -400 -600 -800 -1000 -1200 -1400 -1600 10

12

14

16

18

20

Figura 1-C: Funo Objetivo com Restrio


max(y1) ans = -375

O estabelecimento da regio vivel torna-se mais complicado com o aumento do nmero de variveis e com a complexidade das expresses que definem as restries do sistema. Embora os algoritmos numricos tenham capacidade de detectar quando uma regio vivel no existe (regio vivel nula), eles no podem detectar quando a regio de busca est definida de maneira errada. Portanto, mxima

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

20 ateno deve ser dispensada ao estabelecimento das restries, ou seja, da regio vivel.

1.6.4.

As Variveis de Deciso (VD)

As variveis de deciso ou de projeto ou independentes correspondem, em nmero, ao excesso de incgnitas em relao ao nmero de equaes, ou seja, sua quantidade igual ao nmero de graus de liberdade do sistema. Se existe apenas uma nica soluo para o problema, nenhuma otimizao necessria e possvel. Portanto, para haver condies de otimizar um processo o mesmo dever ter graus de liberdade maior que zero. As VD caracterizam os possveis projetos ou condies operacionais do sistema e devem ter uma certa influncia sobre a funo objetivo. Se uma funo objetivo pouco sensvel a uma varivel de deciso conveniente simplificar o problema assumindo um valor fixo para essa varivel. Por outro lado, se o critrio de desempenho extremamente sensvel a uma determinada varivel de projeto, talvez seja difcil reproduzir na prtica as condies timas calculadas.

1.7.

Procedimento Geral para Solucionar um Problema de Otimizao

No existe um procedimento ou mtodo que possa ser aplicado eficientemente para todo tipo de problema. A escolha do mtodo depende:

da caracterstica da funo objetivo (linear ou no-linear; contnua, discreta ou mista) da natureza das restries (linear ou no-linear; contnua, discreta ou mista) do nmero de variveis de deciso.

Podemos estabelecer 6 passos principais a serem seguindos na soluo de problemas de otimizao: P1. Analise o processo e estabelea as variveis de deciso (VD) e as auxiliares (VAs). P2. Estabelea a funo objetivo (FO) em funo das variveis identificadas no item P1 e de coeficientes conhecidos. P3. Estabelea as restries: balanos de massa e energia funes das VDs e VAs, relaes constitutivas e/ou empricas, limites operacionais mximos e mnimos, faixa de validades das variveis, por exemplo, temperaturas e presses absolutas devem ser positivas, fraes molares entre 0 e 1, etc.,
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

21

limites externos, por exemplo, capacidade mxima de consumo do mercado.

P4. Se o problema demasiadamente grande: subdivida em partes e/ou simplifique a funo objetivo e/ou o modelo do processo. P5. Se possvel faa o mapeamento da funo objetivo, isto , verifique graficamente como a FO varia com a mudana das variveis de deciso. P6. Aplique as apropriadas tcnicas matemticas de otimizao para o problema. P7. Aplique a anlise de sensibilidade da FO, isto , examine a sensilidade do ponto de mnimo/mximo e o valor da FO s mudanas nos coeficientes das funes e a alteraes nas variveis deciso. Os passos P1, P2, P3 e P4 constituem a representao matemtica do problema, exigindo que a equipe responsvel pela otimizao do sistema tenha: (a) muito conhecimento a respeito do processo, (b) muita ateno e habilidades especficas em modelagem de processos. Deve-se escolher um modelo o mais simples possvel (menor quantidade de variveis, equaes constitutivas enxutas) que representa adequadamente o sistema. Executando a etapa P5 temos condies de saber sua ordem de grandeza e de verificar como ela varia com determinada VD. O mapeamento da FO nem sempre simples de realizar embora seja sempre desejvel. A aplicao dos algoritmos de otimizao (passo P6) uma etapa simples, desde que se tenha mo programas de computador j desenvolvidos e testados. Porm se for necessrio implementar ou desenvolver um novo algoritmo ser necessrio um grande esforo (tempo e recursos humanos). Na etapa P7, validao dos resultados obtidos, essencial a participao de engenherios e de tcnicos que conhecem (bem) o sistema/processo otimizado.

1.7.1.

Mapeamento da Funo Objetivo

Antes de executar algum algoritmo de otimizao, interessante que seja realizado o mapeamento da FO. Veja o exemplo a seguir de uma funo Z de duas incgnitas (X,Y):
x = -8:.5:8 ; y = x ; [X,Y] = meshgrid(x,y) ; R = sqrt(X.^2 + Y.^2) + eps ; Z = sin(R)./R ;

Utilizamos as funes de traamento de grficos do MATLAB para mapear de diversas maneiras a funo Z = seno(R)/R. Construimos os grficos bidimensional (figura 1-d), tridimensional (figura 1-e), das curvas de nvel
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

22 (figura 1-f), combinao do grfico tridimensional com o das curvas de nvel (figura 1-g), curvas de nvel pseudo-coloridas (figura 1-h).

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

23
whitebg plot(x,Z) mesh(x,y,Z)

1
0.8 0.6 0.4 0.2 0 -0.2 -0.4 -8

0 .5

-0 .5 1 0 5
-6 -4 -2 0 2 4 6 8

1 0 0 -5 -1 -1 0 0 -5 5 0

Figura 1-D: Grfico bidimensional Figura 1-E: Grfico tridimensional

c = contour(x,y,Z) ; clabel(c);
8 6 4 2 0 -2 -0.2 0.2 0.4 0 -0.2 0 0.8 0.6 0 0

meshc(x,y,Z)

0 .5

Figura 1-F: Curvas de nvel

Figura 1-G: Tridimensional com curvas de nvel

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

24
pcolor(x,y,Z)
8 6 4 2 0 -2 -4 -6 -8 -8

-6

-4

-2

Figura 1-H: Curvas de nvel pseudo coloridas

Se a FO tem mais de duas VDs podemos: (a) plotar vrios grficos da FO com relao a diferentes pares das variveis de deciso,

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

25 (b) plotar um grfico bidimensional no qual a ordenada o valor da FO e na abscissa os conjuntos de valores das variveis de projeto, Figura 1-I. Por exemplo
[nl,nc] = size(Z) ; VetorZ = [ ] ; for i = 1 : nl for j = 1 : nc VetorZ = [ VetorZ ; Z(i,j) ] ; end end whitebg plot(VetorZ,'r')
1 0 .8 0 .6 0 .4 0 .2 0 -0 .2 -0 .4

200

400

600

800

1000

1200

Figura 1-I: Grfico dos valores alinhados de uma funo bidimensional Quando existem muitas VDs o nmero de clculos e/ou de grficos para mapear a FO fica proibitivo, por exemplo, para 5 variveis de deciso com 20 pontos para cada, o nmero de vezes que a FO ser avaliada 205 = 3.200.000.

1.7.2.

Obstculos Otimizao

Se a funo objetivo (FO) e as funes de restries (FR) forem "bem comportadas" a otimizao no apresenta grandes problemas. Particularmente se a FO e as restries forem todas lineares est disponvel um poderoso mtodo (Programao Linear) que resolve este problema de maneira satisfatria. Entretanto muitos problemas de otimizao so no-lineares. Muitos dos problemas prticos de otimizao em engenharia qumica apresentam alguns das dificuldades abaixo: P1. No disponibilidade de dados ou de um modelo matemtico confivel do sistema. P2. Descontinuidades da FO ou das FRs. Por exemplo, o preo de um compressor ou trocador de calor no varia continuamente como uma funo das dimenses, presso, temperatura, etc. pois o incremento de um
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

26 parmetro no afeta o custo em uma certa faixa de variao, porm para uma outra faixa ocorre um salto no valor do equipamento. P3. No-lineraridade da FO ou FR. P4. A FO e a FR so definidas atravs expresses que contm complicadas interaes entre as variveis de deciso. A interao impede a existncia de um nico ponto timo. P5. A FO ou a FR tem comportamento achatado ou exponencial em algumas faixas de variao das variveis de deciso. Isto significa que o problema pouco ou extremamente sensvel, respectivamente, a mudanas dessas variveis. P6. A FO apresenta muitos extremos locais perto da regio que contm o extremo global. Quando no possvel a aplicao dos mtodos de otimizao podemos: (a) fazer um estudo de caso, isto , escolher criteriosamente um nmero limitado de opes e analisar qual a melhor alternativa; (b) fazer um estudo de sensibilidade, semelhante ao estudo de caso, apenas mais sistematizado e com um nmero maior de casos a analisar.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

27

1.8.

Exerccios

E1.1.Crie uma nova funo de duas VDs acrescentando funo Z do tem 1.7.1 (pgina 21) um ruido randmico (a funo no MATLAB rand). Construa grficos bidimensionais, tridimensionais e de contorno. Analise os resultados obtidos assumindo que a nova funo Z uma FO.

E1.2.Desenvolva uma funo objetivo para otimizar seus rendimentos. No esquea de estabelecer as restries impostas pelo sistema (patro, esposa(o), filhos, etc).

2 E1.3.Dada a funo f ( x ) = 3x12 + 2 x1 x 2 + 1.5 x 2 construa seu grficos e ache o ponto de mnimo.

E1.4.Dada a funo f ( x ) = x13 exp x 2 x12 10( x1 x 2 ) o ponto de mximo. Estude a sensibilidade.

] , graficamente obtenha

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

28

2. Conceitos Matemticos
A busca do ponto timo de uma FO baseada em conceitos matemticos bem conhecidos e extensamente estudados. Neste captulo descreveremos e aplicaremos alguns desses conceitos, porm no seremos matematicamente formais. Vamos procurar compreender "intuitivamente" os conceitos matemticos necessrios ao entendimento e utilizao dos algoritmos numricos. Contudo se quisermos implementar algum algoritmo teremos que "entrar no mundo do formalismo matemtico" e estudar com maior profundidade lgebra linear, clculo diferencial, estatstica (para problemas de reconcialiao de dados e de estimativa de parmetros) e clculo numrico. A complementao dos tpicos aqui apresentados pode ser encontrada nos livros de clculo, clculo numrico e/ou lgebra linear.

2.1.

Definies

Uma matriz um conjunto de nmeros, smbolos ou funes dispostos em linhas e colunas. Cada elemento de uma matriz A denominado aij, onde o subscrito i corresponde linha e o subscrito j coluna corresponde.
a11 a = 21 a n1 a12 a 22 an2 a1m a 2m a nm

A n xm

Equao 2-A Se o nmero de linhas (n) for igual ao nmero de colunas (m) ento a matriz denominada de matriz quadrada. Uma matriz quadrada particularmente importante a matriz identidade I. Esta matriz tem todos os elementos iguais a zero, exceto os da diagonal principal (aii = 1, i = 1, ..., n), que so todos iguais a 1 (um).

I n xn

1 0 = 0 0

0 1 0 0

0 0 1 0

0 0 0 1

Equao 2-B

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

29 Vetores so um tipo especial de matriz e tem apenas uma linha ou uma coluna.
x1 x = 2 xn

x nx1

Equao 2-C A transposta de uma matriz (AT) a matriz resultante da troca das linhas pelas colunas da matriz original, ento o elemento aij transforma-se no elemento aji . A transposta de um vetor linha um vetor coluna e vice-versa.

x 1 xn = [x1
T

x2

xn ]

Equao 2-D

2.2.

Operaes Bsicas com Matrizes e Vetores


A = B se e somente se aij = bij , para todo i e j A + B = C se e somente se cij = aij + bij , para todo i e j A e B devem ter as mesmas dimenses

Igualdade: Adio:

Multiplicao: An x m x Bm x r = Cn x r O nmero de colunas da matriz A deve ser igual ao nmero de linhas da matriz B. Cada elemento da matriz C obtido pelo somatrio do produto dos elementos da i-sima linha da matriz A vezes os correspondentes elementos da j-sima coluna da matriz B :

cij = a ik bkj
k =1

Equao 2-E Em geral a multiplicao de matrizes no comutativa, isto :

AB B A
Equao 2-F

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

30 Multiplicao de uma matriz por um escalar: Cada elemento da matriz multiplicada pelo nmero escalar:

s A = B s.aij = bij
Equao 2-G

Transposta de um produto de matrizes:

(AB )

=B A
T

Equao 2-H

Produto interno entre dois vetores: Seja x e y dois vetores de dimenso n, ento
n

x y = x, y = x i y i
T i =1

Equao 2-I

x x = xi2
T i =1

um escalar

Equao 2-J Se o resultado do produto interno entre dois vetores igual a zero, ento esses vetores so ortogonais, em vetores bi ou tridimensionais isto significa que os mesmos so perpendiculares entre si. Inversa de uma matriz: No existe a verso matricial da diviso escalar. Por definio a inversa de uma matriz, necessariamente quadrada, a matriz tal que

A A = AA = I
Equao 2-K onde I a matriz identidade Um uso freqente da inversa de uma matriz para expressar um conjunto de variveis em termos de um outro conjunto, uma operao importante em problemas de otimizao com restries. Por exemplo:

z = Ax A z = x
Equao 2-L

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

31 Determinante de uma matriz: A funo determinante, ou simplismente o determinante de uma matriz (necessariamente quadrada), denotado por det[A] ou |A|. um nmero escalar indispensvel na investigao de sistemas de equaes lineares. No iremos apresentar a definio do determinante, mas apenas como calcul-lo:

para uma matriz de dimenso 1, |A1x1| = a11 para uma matriz de dimenso 2, |A2x2| = a11.a22 - a12.a21 para uma matriz de dimenso 3, |A3x3| = a11.(a22.a33 - a23.a32) - a12.(a21.a33 - a23.a31) + a13.(a21.a32 - a22.a31) para uma matriz de dimenso n, utilize o comando do MATLAB: det(A)
Derivada de uma funo escalar de um campo vetorial: Seja uma funo escalar de um vetor de n variveis f(x) , define-se vetor gradiente ou simplismente gradiente de f(x) ao operador

f ( x ) x1 f ( x ) f ( x ) = = x f ( x ) x n
Equao 2-M Define-se a matriz Hessiana ou simplesmente Hessiana(o) de f(x) , H(x) , matriz das derivadas segunda ordem de de f(x) :
2 f (x ) 2 x1 2 2 f (x ) f (x ) = x x H (x ) = x2 2 1 2 f (x ) x x n 1

2 f (x ) x1x 2 2 f (x ) 2 x 2 2 f (x ) x n x 2

2 f (x ) 2 x n

2 f (x ) x1x n 2 f (x ) x 2 x n

Equao 2-N Seja o vetor b , n x 1 , de coeficientes constantes ento

b f ( x ) f ( x ) bT x =b = b x x x
T T

Equao 2-O Seja os vetores x e z , n x 1 , e a matriz A , n x n , a partir da definio dada pela equao 2-m demonstra-se que:

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

32

x T Az x

) = Az

Equao 2-P e

x T Ax x

) = Ax + A

Equao 2-Q Se A simtrica vale a seguinte expresso

x T Ax x

) = 2 Ax

Equao 2-R e a partir da equao 2-n, se A alm de simtrica for real, ento

2 x T Ax x2

) = 2A

Equao 2-S

2.3.

Independncia Linear, Matriz Singular e Rank ou Posto de uma Matriz

Matriz cujo determinante igual a zero denominada de matriz singular. Isto acontece quando todos os elementos de uma ou mais linhas (ou colunas) so nulos ou quando uma ou mais linhas (ou colunas) da matriz tem uma dependncia linear com outra(s) linha(s) [ou coluna(s)], isto , podemos escrever uma linha (ou coluna) como uma funo linear de uma ou mais linhas (ou colunas) da matriz. Portanto se o determinante de uma matriz zero, esta matriz singular e suas linhas ou colunas so linearmente dependentes. Para matrizes quadradas linhas dependentes implicam em colunas dependentes. Por definio as colunas da matriz A, aj, so linearmente independentes se
n

d
j =1

aj =0

se e somente se dj = 0 qualquer que seja o j Equao 2-T

A dependncia linear ocorre quando para algum valor no nulo de dj a equao 2-t satisfeita.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

33 O rank ou posto de uma matriz definido como o nmero de colunas linearmente independentes (< n). Tambm pode ser entendido como a dimenso da maior matriz quadrada no-singular obtida pelo particionamento, de todas as maneiras possveis, da matriz original.

2.4.

Operadores Linha ou Coluna

Operaes de multiplicao/diviso de uma linha (ou coluna) por um escalar, bem como adio de uma linha (ou coluna) a outra linha (ou coluna) no modificam o determinante de uma matriz. Operaes nas linhas de uma matriz podem ser utilizadas para obter a inversa da mesma. Para tanto, aumente a matriz quadrada A com a matriz identidade I,
A aug = A

[ ]

Equao 2-U ento pr-multiplique a matriz aumentada por A-1

[A ] = [ A ]
1

Equao 2-V A equao 2-v demonstra que efetuando operaes-linha em A da matriz Aaug, de forma a transformar A na matriz I, e repetindo as mesmas operaes na matriz I da matriz Aaug, obtemos A-1 na parte aumentada de A.

2.5.

Soluo de Sistema de Equaes Lineares


a1 x1 + a 2 x 2 + an xn = b

Uma equao linear uma expresso da forma

Equao 2-W Em muitos problemas de otimizao necessrio obter a soluo de sistemas de equaes lineares. Considere que os elementos de uma matriz A, de dimenso n x n, so os coeficientes de um sistema de n equaes e n incgnitas:
a11 a 21 a n1 a12 a 22 an2 a1n x1 b1 a 2 n x 2 b2 = Ax = b a nn x n bn

Equao 2-X

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

34 ento, para b 0 e se a matriz A for no singular, isto , se existir A-1, a soluo da equao 2-x dada por

x= A b
Equao 2-Y Se o rank da matriz Anxn for n, ento existe uma nica soluo, ou seja o sistema de equaes linearmente independente. Caso contrrio, ou seja, |A| = 0, ento o sistema tem infinitas solues ou a soluo no existe. Se b = 0, a equao 2-x tem duas solues:

a soluo trivial: x = 0 a soluo no-trivial: x 0, neste caso det[A] = 0

2.6.

Graus de Liberdade

Seja um sistema com n incgnitas e r equaes

Se n > r o sistema tem gl = n - r graus de liberdade e para solucion-lo tem-se que atribuir valores a gl variveis. Se n = r o sistema no tem graus de liberdade; para sistemas lineares de gl = 0 se o mesmo tiver soluo, ela nica; para sistemas de equaes no lineares de gl = 0 nada se pode afirmar, por exemplo, a equao seno(x) = 0 tem infinitas solues, enquanto uma equao do segundo grau tem at duas solues. Se n < r o sistema tem gl < 0 ; se o sistema linear ele est sobredeterminado e deve-se eliminar algumas equaes para poder ser solucionado; se o sistema no linear as (n - r) equaes a mais podem ser utilizadas para encontrar possveis conjuntos viveis.
Da discusso acima verifica-se que os sistemas no-lineares so mais complexos e conseqentemente de soluo mais difcil. Para otimizar um sistema linear o mesmo deve ter graus de liberdade (gl > 0). A otimizao se d atravs da escolha criteriosa, e por intermdio de um algoritmo numrico, do valor de gl variveis que maximizem/minimizem uma funo objetivo. Para otimizar um sistema no-linear desejvel que o mesmo tenha graus de liberdade (gl > 0), pois se gl = 0 a pesquisa do ponto timo ser apenas nas solues do sistema de equaes, enquanto que para gl > 0 o algoritmo de procura tem mais liberdade de agir.

2.7.

Autovalores e Autovetores

Uma matriz A n x n tem n autovalores. Define-se um vetor no-nulo n x 1 , v, de autovetor, o qual esta associado com o autovalor da seguinte forma
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

35

Av = v
Equao 2-Z Para cada autovalor corresponde um autovetor. Os autovalores e autovetores fornecem informaes a respeito da natureza das funes em uma otimizao. Se todos os autovalores de uma matriz A so positivos (maiores que zero), ento A positiva definida e tem inversa. Se todos os autovalores de uma matriz A so negativos (menores que zero), ento A negativa definida. Rearranjando a equao 2-z obtemos

(A I )v = 0

Equao 2-AA cujas variveis desconhecidas so os autovalores e os autovetores v . Devido o lado direito da equao 2-aa ser zero, duas solues so possveis: a soluo trivial: v = 0 ou existe mais de uma soluo, ento det[A - I] = 0.

2.8.

Estudo de Funo

Seja uma funo de uma nica varivel, f(x) , a condio necessria, mas no suficiente, para que um ponto x*, que no esteja na fronteira do domnio da funo, ou simplesmente ponto interno, seja ponto de mximo ou de mnimo que a derivada da funo neste ponto seja nula. Seja o ponto x* o ponto crtico ou ponto estacionrio isto f'(x*) = 0. Este ponto pode ser um ponto de mximo, de mnimo ou de inflexo, veja a figura 2a.
2500

2000

1500

Figura 2-A: Funo monovarivel

A condio suficiente para que x* seja um mnimo local que f'(x*) = 0 e f''(x*) > 0, ou seja, se f'(x*) = 0 e f''(x*) > 0 ento x* ponto de mnimo.
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

36 Porm existem pontos de mnimo que no atendem a essa condio, da a condio suficiente. Por exemplo em f(x).= x4/3 , x* = 0 o ponto de mnimo, embora f''(x*) no seja definido neste ponto. A condio suficiente para que x* seja um mximo local que f'(x*) = 0 e f''(x*) < 0, ou seja, se f'(x*) = 0 e f''(x*) < 0 ento x* ponto de mximo. Porm existem pontos de mximos que no atendem a essa condio, da a condio suficiente. A condio necessria para que o ponto x* de uma funo multivarivel seja estacionrio que todas as derivadas parciais da funo em relao s suas variveis sejam nulas naquele ponto, isto , f'(x*) = 0 A condio suficiente para que o ponto x* de uma funo multivarivel seja mnimo local que a matriz das derivadas parciais de segunda ordem da funo em relao a todas as suas variveis seja positiva definida naquele ponto, isto , H(x*) > 0. A condio suficiente para que o ponto x* de uma funo multivarivel seja mximo local que a matriz das derivadas parciais de segunda ordem da funo em relao a todas as suas variveis seja negativa definida naquele ponto, isto , H(x*) < 0. Na seo 2.11 ser apresentado o conceito de matriz positiva (negativa) definida. Por ora basta entender que existe um paralelo entre esse conceito e o de derivada positiva (negativa) de segunda ordem de uma funo monovarivel.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

37

2.9.

Continuidade de Funes

Em problemas de otimizao melhor que as funes e suas derivadas sejam contnuas. Na figura 2-b vemos um grfico de uma funo descontnua, enquanto que na figura 2-c temos uma funo contnua, mas com derivada de 1a ordem descontnua.
4

1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8

x 10

10000 9000 8000 7000 6000 5000 4000 3000 2000 1000
5 10 15 20 25 30 35

-1 0

0 0

10

15

20

25

30

Figura 2-B: Funo descontnua

Figura 2-C: Funo contnua com derivada descontnua

Uma funo monovarivel continua no ponto xo se: a) f(xo) existe b) lim f ( x) existe
x xo

c) lim f ( x) = f ( x o )
x xo

Uma funo de duas variveis contnua no ponto (xo,yo) se: a) f(xo,yo) existe b) c)
( x , y )( xo , yo )
( x , y )( xo , yo )

lim

f ( x, y ) existe f ( x, y ) = f ( x o , y o )

lim

Quanto mais afastada estiver a descontinuidade do ponto de mximo (mnimo) da funo, mais facilmente este ponto encontrado. Se uma funo no continuamente diferencivel, veja figura 2-c, mtodos de otimizao que utilizam derivadas no podem ser empregados, pois a derivada no definida nos pontos de descontinuidade de f(x). Um exemplo de descontinuidade acontece no projeto de tubulaes. Existe um nmero finito de dimetros de tudo disponveis para compra, veja figura 2d, portanto a escolha do dimetro recair entre uma dessas opes. Para resolver esse problema existem duas alternativas:

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

38 a) considerar funes de restries discretas e realizar uma otimizao discreta, neste caso os algotimos numricos so mais complexos; b) considerar variaes contnuas para o dimetro da tubulao e aproximar o resultado para a bitola mais prxima (ponto sub-timo), para fins de engenharia este procedimento satisfatrio.
20 18 16 14 Custo 12 10 8 6 4 2 0 2 4 6 8 D i m e tro s d e tub o s c o m e rc ia lm e nte d is p o nve is 10

Figura 2-D: Custo de instalao de tubulao em funo do dimetro

2.10. Funes Unimodais e Multinodais


Na formulao de uma funo objetivo melhor, se possvel, escolher uma unimodal (que tenha um nico ponto de mximo ou de mnimo) que uma multinodal. Numa funo unimodal o extremo local o extremo global; enquanto que numa funo multinodal existem vrios extremos locais, um dos quais o extremo global. Os mtodos numricos apenas detectam extremos locais.

2.11. Funes Cncavas e Convexas


Funes convexas e cncavas so unimodais. A determinao da convexidade ou concavidade ajuda a estabelecer se um extremo tambm o extremo global. Uma funo denominada cncava (tem ponto de mximo, figura 2-e) em uma certa regio R, se para todos os pares (xa,xb), pertencentes regio R,

f [ x a + (1 )x b ] f ( x a ) + (1 ) f ( x b )
Equao 2-BB onde 0 < < 1 . A funo estritamente cncava se apenas a relao de desigualdade (>) atendida.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

39 Uma funo denominada convexa (apresenta ponto de mnimo, figura 2-f) se na equao 2-bb o sinal de > for substituido por <, e estritamente convexa se o sinal de desigualdade for <. Intuitivamente, uma superfcie f(x) cncava se um segmento de reta que une dois pontos desta superfcie esta sempre na ou sob a superfcie. Similarmente f(x) convexa se um segmento de reta que une dois pontos desta superfcie esta sempre na ou sobre a superfcie. Um plano (ou reta, ou funo linear) uma funo convexa e cncava ao mesmo tempo, embora no seja estritamente convexa ou cncava.
500

-500

-1000

-1500

-2000

-2500 -30

-20

-10

10

20

30

40

50

Figura 2-E: Funo cncava


3000

2500

2000

1500

1000

500

0 -30

-20

-10

10

20

30

40

50

Figura 2-F: Funo convexa

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

40 A equao 2-bb no uma maneira conveniente de testar a concavidade ou convexidade de uma funo. Em seu lugar utiliza-se a segunda derivada de f(x), 2f(x), freqentemente denominada de matriz de Hessian ou matriz Hessiana de f(x) e denotada por H(x), uma matriz simtrica das derivadas de segunda ordem de f(x). Por exemplo, se f(x) uma funo quadrtica de 2a ordem
2 f ( x ) = h11 x12 + h12 x1 x 2 + h22 x 2

Equao 2-CC a Hessiana dada por

2 f ( x ) 2 f ( x ) x1x 2 2h11 x 2 = H (x ) = 2 f (x ) = 2 1 2 f ( x ) f ( x ) h12 2 x x x 2 2 1


Equao 2-DD

h12 2h22

Analogamente s funes monovariveis, a matriz das derivadas segundas de uma funo multivarivel, ou seja a Hessiana, determina se uma funo tem um mximo ou um mnimo em uma regio, ou seja, a matriz H(x) estabelece se a funo cncava ou convexa numa dada regio, respectivamente. Resumindo, dada uma funo objetivo f(x) a sua matriz Hessiana H(x) determina a sua natureza: 1. Para f(x) ser estritamente convexa H deve ser positiva definida. Para f(x) ser convexa H deve ser positiva semi-definida. H positiva definida se e somente se xTHx > 0 para todo x 0. H positiva semi-definida se e somente se xTHx > 0 para todo x 0. Se todos os autovalores de H forem positivos (>0) ento H positiva definida. Se todos os autovalores de H forem no-negativos (>0) ento H positiva semi-definida. 2. Para f(x) ser estritamente cncava H deve ser negativa definida. Para f(x) ser cncava H deve ser negativa semi-definida. H negativa definida se e somente se xTHx < 0 para todo x 0. H negativa semi-definida se e somente se xTHx < 0 para todo x 0. Se todos os autovalores de H forem negativos (<0) ento H negativa definida. Se todos os autovalores de H forem no-positivos (<0) ento H negativa semi-definida. 3. H indefinida se xTHx < 0 para alguns x e xTHx > 0 para outros. Se uma funo tem um ponto estacionrio onde a matriz Hessiana tem autovalores negativos e positivos, a funo no cncava e nem convexa. 4. Para f(x) ser simultaneamente cncava e convexa H = 0, e neste caso f(x) uma funo linear.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

41 Algumas vezes utiliza-se o fato de que a soma de funes convexas (cncavas) tambm uma funo convexa (cncava). Ou seja, podemos analisar f(x) em termos das funes que a compe. Se uma funo separvel, isto , f(x) = f1(x) + f2(x) , e se f1(x) e f2(x) so convexas (cncavas) ento f(x) tambm convexa (cncava).

2.12. Regio Convexa


So raros os problemas prticos sem restries. As restries podem ser impostas aos valores que as variveis de deciso podem assumir ou sobre a prpria funo objetivo. Em geral as restries so expressas em termos de equaes e/ou inequaes

g k ( x ) = 0 para k = 1,2,, e g k ( x ) 0 para k = + 1, + 2, ,


Equao 2-EE importante o tipo da regio de busca definida pelo conjunto de restries do problema. Regies convexas so mostradas na figura 2-g (a) e (b).

Figura 2-G: Regies convexas

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

42 Na figura 2-h vemos regies viveis no-convexas.

Figura 2-H: Regies no-convexas Se uma regio completamente limitada por funes cncavas do tipo gi(x) > 0 , ento uma regio convexa fechada. Por outro lado se a regio de busca restrita por inequaes da forma gi(x) < 0 e convexas, ento uma regio convexa aberta. Encontramos muitas variaes quanto ao tipo e nmero de extremos de uma FO e das suas FR's. No caso geral, necessrio encontrar todos os extremos locais e compar-los para determinar o extremo global. Este procedimento nem sempre exigido quando certas combinaes de FO's e FR's esto presentes. Considere uma funo objetivo cncava restrita por uma regio convexa. Como a FO cncava ela admite mximo local que tambm ser o mximo global, pois se a regio convexa, na figura 2-i(a) e (b) observa-se que apenas um ponto de mximo encontrado. Este, portanto o mximo local e global. Observe que se a regio no for convexa existem vrios mximos locais, veja figura 2-i(c), e a comparao entre os mesmos necessria. Similarmente para uma funo convexa numa regio convexa, existir apenas um ponto de mnimo.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

43

Figura 2-I: Relaes entre FO's e regies viveis Por outro lado pode existir mais de um ponto de mnimo numa FO cncava numa regio convexa conforme mostrado na figura 2-i(b), ou mais de um ponto de mximo numa FO convexa de uma regio convexa. Funes lineares so ao mesmo tempo cncavas e convexas, portanto, quando a regio de busca convexa, admite apenas um mximo e um mnimo local. Assim se a FO's e suas FR's so bem comportadas a procura do ponto timo facilitada. Se uma FO bem comportada para a maximizao no implica que ser na minimizao e vice-versa. Assim a minimizao de funes cncavas e a maximizao de funes convexas envolve mais de um ponto timo. Se na figura 2-i(c ) a pesquisa do ponto timo comear pelo lado esquerdo da regio vivel o ponto alcanado ser o mximo local (no global), por outro lado se a busca for iniciada pelo lado direito ser atingido o mximo global. Portanto, para uma regio no-convexa temos que comparar todos os pontos extremos entre si para determinar o extremo global. Uma alternativa para resolver este problema completar a regio no-convexa (rea amarela da figura 2-j) de forma a torn-la convexa (rea amarela mais azul da figura 2-j) e encontrar o extremo, que ser o global se estamos minimizando uma funo convexa numa regio convexa, ou se maximizando uma funo convava numa regio convexa..

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

44

Figura 2-J: Regio no-convexa transformada em convexa

2.13.

Condies Necessrias e Condies Suficientes para um Extremo de uma Funo Irrestrita

A maneira mais fcil de estabelecer as condies necessrias e as condies suficientes para que um ponto x seja mnimo ou mximo atravs da expanso em srie de Taylor da funo f(x) em torno do presumvel ponto extremo x*

f ( x ) = f x + T f x . x +

( )

( )

1 T x . 2 f x . x + O3 ( x ) 2

( )

( )

Equao 2-FF onde x = x - x* . Assumindo que todos os termos da equao 2-ff existem e os termos de ordem igual ou superior a 3 so desprezveis, pode-se concluir a respeito dos pontos estacionrios por intermdio das derivadas de f(x) . Por definio, um mnimo local no ponto x* tal que nenhum outro ponto nas vizinhanas de x* gera valores de f(x) menores que f(x*), ou

f (x ) f x 0

( )

Equao 2-GG x* mnimo global se a equao 2-gg atendida para todo x pertencente regio vivel. Analogamente, x* mximo local se

f (x ) f x 0

( )

Equao 2-HH Examinando o segundo termo do lado direito da equao 2-ff: Tf(x)x, chega-se concluso que Tf(x*) = 0 , pois como x assume valores negativos e positivos, para que a condio de mnimo (equao 2-gg) ou de mximo (equao 2-hh) seja sempre satisfeita, por menor que que seja x , Tf(x*) deve ser sempre nulo, seno essa condio seria violada, pois, para
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

45 valores muito pequenos de x ,os termos das derivadas de ordem igual ou superior a 2 so desprezveis em relao ao elemento das derivadas de 1a. Portanto para x* ser ponto estacionrio o gradiente de f(x) deve ser nulo em x* , Tf(x*) = 0 . Essa condio apenas necessria pois o ponto x* pode ser ponto de sela ou ponto de inflexo. Se a condio necessria (Tf(x*) = 0) atendida, ento 2f(x*) deve ser maior que zero para que x* seja ponto mnimo, pois a equao 2-gg deve ser satisfeita mesmo para valores muito pequenos de x , e nesse caso os termos de ordem igual ou superior a 3 da equao 2-ff so desprezveis em relao ao termo da derivada 2a. Raciocnio anlogo com a equao 2-hh pode ser feito para interpretar se um ponto estacionrio mximo. Logo para x* ser ponto de mnimo, Tf(x*) = 0 e 2f(x*) > 0 . Essa condio apenas suficiente pois pode ser que a 2a derivada no exista no ponto x* , apesar deste ser ponto de mnimo. Similarmente raciocina-se para o ponto de mximo. Se f(x*) = 0 e 2f(x*) = 0 ento x* ponto de sela. Resumindo as condies necessrias (CN1 e CN2 abaixo) e as condies suficientes (CS3 e CS4) que garantem que x* um extremo so as seguintes: CN1. f(x) seja uma vez diferencivel no ponto x* . CN2. f(x*) = 0 , isto , x* seja um ponto estacionrio. CS1. f(x) seja duas vezes diferencivel no ponto x* . CS2. 2f(x*) = H(x*) seja positiva definida para que um mnimo exista em x* , e seja negativa definida para que um mximo exista em x* . Na tabela 2-a v-se um resumo das condies discutidas nesta seo.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

46 Tabela 2-A

f(x*) 0
=0 =0 =0 =0 =0

H(x*) = 2f(x*)

xT.2f(x*).x

Prximo de x* Pode-se afimar f(x) -f(x) que

no ponto estacionrio positiva definida positiva semidefinida negativa definida negativa semidefinida indefinida >0 >0 <0 <0 ambos > 0 e > 0, dependendo de x >0 possivelmente >0 <0 possivelmente <0 > 0, < 0 ou nenhum dos dois existe mnimo possivelmente existe mnimo existe mximo possivelmente existe mximo nada se pode afirmar

Observaes:

f(x) que o gradiente da funo f(x). H(x) = 2f(x) denominada de matriz Hessiana de f(x), ou simplesmente Hessiano(a) de f(x). Alguns autores denominam o determinante de 2f(x) de Hessiano de f(x), ou seja, H(x) = det[2f(x)] , porm esta no a nomeclatura adotada neste trabalho.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

47

2.14.

Interpretao da Funo Objetivo em Termos de uma Aproximao Quadrtica

Se uma funo de duas variveis ou pode ser aproximada por uma funo quadrtica do tipo
2 f ( x ) = b0 + b1 x1 + b2 x 2 + b11 x12 + b22 x 2 + b12 x1 x 2

Equao 2-II ento os autovalores da matriz Hessiana de f(x) podem ser utilizados para interpretar a natureza de f(x) nos pontos estacionrios x* . A tabela 2-b lista as concluses que podem ser alcanadas examinando os autovalores de H(x*), e as ilustram as diferentes superfcies correspondentes a cada tipo de funo quadrtica. Tabela 2-B: Interpretao geomtrica de uma funo quadrtica
Caso Relao entre os autovalores 1 = 2 1 = 2 1 > 2 1 > 2 |1| = |2| |1| = |2| 1 > 2 2 = 0 2 = 0 2 = 0 2 = 0 Sinal 1 + + + + + + Sinal 2 + + + Tipo de contorno Crculo Crculo Elipse Elipse Hiprbole Hiprbole Hiprbole Reta Reta Parbola Parbola Interpretao geomtrica Monte circular Vale circular Monte elptico Vale elptico Sela simtrica Sela simtrica Sela alongada Condilheira estacionria Vale estacionrio Cordilheira crescente Cordilheira decrescente Ponto estacionrio Mximo Mnimo Mximo Mnimo Ponto de sela Ponto de sela Ponto de sela Infinitos Infinitos No No Problema de otimizao bem-comportado e raro na prtica bem-comportado e raro na prtica bem-comportado e mais freqente bem-comportado e mais freqente degenerado degenerado degenerado degenerado degenerado degenerado degenerado Fig.

1 2 3 4 5 6 7 8 9 10 11

2.11 2.11 2.12 2.12 2.13 2.13 2.13 2.15 2.15 2.16 2.16

Uma funo objetivo dita bem-comportada quando seus contornos formam uma regio convexa. Como mostrado na tabela 2-b os autovalores da matriz Hessiana de f(x) indicam a forma da superfcie formada por f(x). Por sua vez os autovetores de H(x) correspondem s direes dos principais eixos dos contornos de f(x). Esta informao pode ser utilizada para definir direes de pesquisa mais eficientes.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

48

Figura 2-K: Geometria de FO de 2a ordem de duas VDs: contornos circulares

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

49

Figura 2-L: Geometria de FO de 2a ordem de duas VDs: contornos elpticos

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

50

Figura 2-M: Geometria de FO de 2a ordem de duas VDs: ponto de sela

Figura 2-N: Geometria de FO de 2a ordem de duas VDs: vale

Figura 2-O: Geometria de FO de 2a ordem de duas VDs: cordilheira decrescente

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

51

2.15. Exerccios
E2.1.Utilizando a definio de inversa de uma matriz, expresse o vetor x em funo do vetor z. z1 = x1 + x2 z2 = 2x1 + x2 E2.2.Utilizando a tcnica da matriz aumentada (operadores-linha) calcule a inversa de A:

1 4 A= 2 1
Compare a matriz A-1 com a inversa calculada pelo comando inv(A) do MATLAB. E2.3.Calcule a soluo dos seguintes sistemas de equaes lineares: A x = b (a)

2 1 1 A= ; b = 0 1 2 2 2 6 A= ; b = 5 1 1 2 2 6 A= ; b = 3 1 1

(b)

(c )

E2.4.Utilizando a equao det[A - I] = 0 calcule os autovetores e autovalores 1 2 da matriz A = . Compare os resultados com os obtidos pelo 2 1 comando [v,d] = eig(A) E2.5.Determine os pontos estacionrios da funo f ( x ) = classifique-os. E2.6.Verifique a regio na qual f(x) e f'(x) so contnuas: 1 a) f ( x ) = x b) f ( x ) = ln ( x ) E2.7.Estude a variao da funo f(x) = 2x2 - x3 , isto , estabelea as regies de concavidades e/ou convexidades, calcule os pontos estacionrios e obtenha o valor de de f(x) nesses pontos. Trace grficos de f(x). E2.8.Determine a convexidade/concavidade das funes abaixo: a) f(x) = 2x12 - 3x1x2 + 2x22 b) f(x) = x12 + x1x2 + 2x2 + 4 c) f(x) = 2x1 + 3x2 + 6 d) f(x) = 2x12 + 2x1x2 + 1,5x22 + 7x1 + 8x2 + 24
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

1 x + 2x + x 2 + 1
4 3

52 E2.9.Determine a regio vivel e verifique, atravs da Hessiana e de grficos, se a mesma convexa ou no: a) -x12 + x2 > 1 ; x1 - x2 > -2 b) -x12 + x2 > 1 ; x1 - x2 < -2

c) x1 < 6 ; x2 < 6 ; x1 > 0 ; x2 > 0 ; x1 + x2 < 6 E2.10.Classifique os pontos estacionrios e verifique se as condies necessrias e as suficientes so atendidas: a) f(x) = x4/3 b) f(x) = 4x3 c) f(x) = x13+ x22 - 3x1 + 8x2 + 2 d) f(x) = 4 + 4,5x1 - 4x2 + x12 + 2x22 - 2x1x2 + x14 - 2 x12x2 E2.11.Happel e Jordan (Chemical Process Economics, Marcel Dekker, New York, 1975, p. 178) desenvolveram uma funo objetivo (custo) para uma coluna de destilao: f(n,P,R) = 14720(100 - P) + 6560R - 30,2PR + 6560 - 30,2P + 19,5n(5000R - 23PR +5000 - 23P)0,5 + 23,2(5000R - 23PR + 5000 - 23P)0,62 onde n o nmero de estgios tericos, R a razo de refluxo e P o percentual de recuperao da corrente do fundo. Qual o ponto timo? Neste ponto a FO convexa? Existe alguma regio no convexa nas vizinhanas do ponto timo? E2.12.Uma reao homognea converte 2 compostos orgnicos (A e B) num produto P pelo aquecimento do meio reacional. Os reagentes podem ser injetados no reator, enquanto que vapor passa por uma serpentina para aquecer o meio reacional. O produto P pode ser vendido a 50$/kg-mol. Para 1 kg-mol de alimentao, o custo da alimentao (em $/kg-mol) uma funo da frao molar de A (xA) e dado por f(xA) = 2 + 10xA + 20xA2 . O custo do vapor (em dolares) uma funo de S (kg de vapor/kg-mol de alimentao) e g(S) = 1 + 0,003S + 2x10-6S2 . O rendimento a P dado por yP(xA,S) = 0,1 + 0,3xA + 0,001S + 0,0001xAS , onde as unidades de yP so kg-mol de P/kg-mol da alimentao. Pede-se a) Obtenha a funo lucratividade (base de 1 kg-mol de alimentao) em funo de xA e S Maximize a FO sujeita s seguintes restries: S>0 0 < xA < 1 e

b)

c) Demonstre matematicamente se f uma funo cncava ou convexa? d) A regio vivel convexa? Por que?

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

53 Ref.: Todos os exerccios foram extrados ou adaptados de Edgar, T. F. & Himmelblau, D. M. "Optimization of Chemical Processes".

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

54

3. Formulao Matemtica de um Problema de Otimizao


Podemos sub-dividir o problema de otimizao em trs etapas: E1. Expresso em linguagem matemtica do problema.

Identificao das variveis de deciso (VDs) e das auxiliares (VAs, todas as demais variveis e constantes) Identificao do objetivo (FO) Identificao das restries (FRs)

E2. Resoluo das equaes e obteno do(s) ponto(s) timo(s). E3. Interpretao dos resultados. Dessas trs etapas, sem dvida nenhuma, a primeira, ou seja, a formulao matemtica do problema a mais difcil e crtica. Difcil pois requer um profundo conhecimento do sistema a ser otimizado e o levantamento de informaes nem sempre disponveis ou quantificveis de maneira precisa. Crtica porque as demais etapas dependem dela. O desenvolvimento da funo objetivo e de suas restries requer que sejam arbitradas hipteses simplificadoras, que preservem as principais caracterstivas do sistema e que possibilitem a resoluo do problema. Ou seja, deve-se estabelecer um modelo matemtico simultaneamente simples e fiel aos fenmenos do sistema. No existe um procedimento padronizado para desenvolver um modelo matemtico de um sistema. Na verdade esta tarefa uma arte que deve ser aprendida a partir da realizao de vrios exerccios e exemplos. A resoluo do problema de otimizao se resume a aplicao de algoritmos numricos adequados a cada classe de problemas. Esta tarefa no complicada, embora o desenvolvimento e implementao de novos algoritmos o seja. Porm j esto comercialmente disponveis timos "pacotes computacionais": PCO1. IMSL (International Mathematical and Statistical Library), PCO2. NAG (Numerical Algorithms Group), PCO3. HARWELL, PCO4. NUMERICAL RECIPES in C, FORTRAN, PASCAL, PCO5. TOOLBOX DE OTIMIZAO DO MATLAB. Neste curso ficaremos mais interessados em aplicar corretamente os algoritmos implementados no MATLAB. A interpretao dos resultados obtidos outra etapa que requer muita ateno e conhecimento a respeito do sistema. Por exemplo, quando existe a multiplicidade de pontos extremos a escolha do melhor pode recair sobre um
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

55 extremo local diferente do global, mas que apresente caractersticas mais apropriadas para o sistema. Como foi dito no Captulo 1, a expresso matemtica de um problema de otimizao tem duas partes: P1. a funo objetivo (FO), ou seja, o critrio de desempenho a ser atingido, cuja especificao obrigatria; P2. as restries ou funes de restrio (FR), que esto quase sempre presentes. De maneira geral as restries podem ser escritas sob a forma de equaes (algbricas ou diferenciais) e/ou inequaes (algbricas ou diferenciais). Genericamente o problema de otimizao pode ser formulado da seguinte forma
min f ( x)
x

sujeito a e/ou

h( x ) 0

g (x ) = 0

Equao 3-A Para resolver os problemas linearres ou no-lineares de otimizao com ou sem restries existem inmeros mtodos numricos. Nos captulos 4, 5, e 6 descreveremos alguns dos algoritmos mais utilizados nos problemas de engenharia qumica. Nas sees 3.1, 3.2 e 3.3 estudaremos como definir a FO e suas FR's.

3.1.

A Funo Objetivo (FO)

Devemos ser capazes de traduzir expresses verbais do tipo maximizao do lucro ou minimizao dos custos em termos matemticos. Devemos expressar a FO em termos de unidades monetrias ou em unidades quantificveis, e omitir expresses filosficas do tipo "construir um mundo melhor" ou "desenvolver uma sociedade mais humana". Tambm no trataremos de problemas que envolvem mltiplas funes objetivos. Na definio da FO podemos considerar apenas objetivos econmicos (maximizar a lucratividade, por exemplo) ou apenas objetivos operacionais (diminuir a diferena entre o valor desejado e o valor medido na operao de um equipamento) ou combinar os dois tipos de objetivos numa nica FO. Todos os procedimentos numricos de otimizao requerem que seja definido um critrio de parada ou tolerncia, pois a soluo exata nunca encontrada, mas apenas uma aproximao da mesma.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

56

3.1.1.

Tolerncia ou Critrio de Parada

Como dissemos anteriormente, o ponto timo obtido est numa vizinhana do timo verdadeiro. Esta vizinhana pode ser to pequena quanto a preciso das informaes utilizadas, mas sempre ser necessrio arbitrar tal aproximao, isto , a tolerncia. Um dos seguintes critrios podem ser utilizados para interromper os processos iterativos de procura do ponto timo: Erro absoluto na FO:

f x

( ) f (x ) <
k +1 k

Equao 3-B Erro relativo na FO:

f x

( ) f (x ) < f (x )
k +1 k k

Equao 3-C Erro absoluto no ponto timo:

xik +1 xik < 3 i n


Equao 3-D ou
xik +1 xik =

(x
n i =1

k +1 i

xik

< 4

Equao 3-E Erro relativo no ponto timo:


xik +1 xik < 5 i n xik

Equao 3-F Erro absoluto na direo de busca:

f x

( )
k

f ( x ) = < 6 i n i =1 x x k
n

Equao 3-G Na verdade devemos utilizar no mnimo 2 critrios para caracterizar que as tolerncias especificadas foram alcanadas.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

57

3.1.2.

Objetivos Econmicos

A FO pode ser escrita em relao ao lucro e/ou custo, ou simplesmente em termos da lucratividade de um dado projeto. O termo lucratividade utilizado para mensurar a quantidade de lucro gerado, tal medida pode ser expressa de diferentes maneiras. Qual a forma mais adequada depende do ambiente onde esta inserido o problema. Para desenvolver uma FO que leve em conta a lucratividade de um dado empreendimento necessrio compreender conceitos tais como depreciao, fluxo de caixa, custos de capital, custos operacionais, valor presente e valor futuro, inflao, vida econmica, investimento inicial, capital de giro, taxa de retorno de investimento, valor presente lquido, tempo de retorno, etc. Infelizmente no temos tempo para discutir com profundidade tais temas e por isso no os trataremos, com excesso para os custos de capital e operacional que abordaremos a seguir. Podemos estabeler os seguintes objetivos econmicos: OE1. A minimizao dos custos ou maximizao dos lucros operacionais. OE2. A minimizao dos custos de investimento (ou de capital). OE3. A minimizao de uma funo que inclua os custos de capital e operacional. A primeira categoria de funes objetivo (OE1) envolvem apenas custos variveis e a receita com as vendas e encontrada em situaes onde o custo de capital uma quantia fixa (os equipamentos j esto comprados e funcionando). A segunda categoria (OE2) aparece em situaes onde no existem custos variveis, por exemplo, em muitos problemas de projeto mecnico de equipamentos. A terceira categoria (OE3) inclue simultaneamente custo de capital e custo operacional. Por exemplo na deciso de implantar uma nova fbrica ou ampliar uma j existente. Este tipo de problema mais complexo e difcil de equacionar. O Exemplo 3.1 apresenta um problema de otimizao cuja FO funo apenas dos custos operacionais. Exemplo 3.1: FO funo apenas dos custos e receitas operacionais. Tempo timo de campanha de um reator cataltico. Considere um ciclo de operao de um reator cataltico que sofre regenerao peridica de seu leito. Seja x1 o nmero de dias nos quais o catalisador utilizado no reator e x2 o nmero de dias necessrios para a regenerao. Portanto cada ciclo dura x1 + x2 dias. As seguintes hipteses podem ser consideradas: H.1. A operao do reator apenas pode ser inicializada no turno da manh, portanto x1 + x2 deve ser um nmero inteiro.
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

58 H.2. Vazo constante de alimentao do reator q [=] kg/dia H.3. Custo constante da matria-prima C1 [=] $/kg H.4. Valor constante do produto C2 [=] $/kg H.5. Custo constante de regenerao C3 [=] $/ciclo de regenerao H.6. Atividade cataltica (A) obedece a equao A = 1 - K.x1 onde A a frao massica convertida de matria-prima , 1 a atividade no incio da operao do reator, K um fator constante. q.A a quantidade de matria-prima convertida em produto em um dia. H.7. Custo da separao entre reagente e produto desprezvel. H.8. Custo de recirculao de reagente negligencivel. Desenvolva uma funo objetivo em relao ao custo e receita operacional e encontre o ponto timo. Para x2 = 2 , K = 0,02 , q = 1000 , C1 = 0,4 , C2 = 1 , C3 = 1000 qual o valor de x1opt . Soluo: Identificao da VD: Exceto x1 , todas as demais variveis so fixas, portanto esta a varivel de deciso. Identificao do objetivo: Para um ciclo completo de operao e regenerao (x1 + x2), a FO definida como a maximizao do lucro dirio (receita - despesa) pode ser escrita como: maximizar o Lucro/dia Onde: Lucro/dia=(receita regenerao) diria)-(custo dirio matria-prima)-(custo dirio

Lucro/dia = f(q,x1,x2,C1,C2,C3,A) receita diria = (preo de venda do produto) x (produo diria) (produo diria) = (produo total)/(nmero total de dias) (produo diria) = (q.Amed.x1)/(x1 + x2)
x1

Amed =

Adx1
0 x1

x1

(1 Kx1 )dx1
0

dx1
0

x1

x1 K x1

x 12

2 2 = 1 K x1 2

custo dirio matria-prima=(preo matria-prima)

matria-prima)x(consumo

dirio

consumo dirio matria-prima = (consumo total) / (nmero total de dias) consumo dirio matria-prima = q.x1/(x1 + x2) custo dirio regenerao=(custo de regenerao por ciclo)/(nmero total dias) Portanto a FO :
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

59
f (q, x1 , x 2 , C1 , C 2 , C 3 , A) = C 2 qAmed x1 C3 C qA x C1 qx1 C 3 C qx 1 1 = 2 med 1 x1 + x 2 x1 + x 2 x1 + x 2 x1 + x 2

Identificao das restries: No existem restries. Para encontrar o ponto timo temos que derivar a FO em relao a x1 e igualar a zero, e resolvendo para x1 encontramos
2 2 C Cx x1opt = x1 = x 2 + x 2 1 2 + 3 x 2 C2 qC 2 K

Para x2 = 2 , K = 0,02 , q = 1000 , C1 = 0,4 , C2 = 1 , C3 = 1000 , ento x1opt = 12,97 . Obviamente x1 uma varivel inteira, logo x1opt deve ser aproximada para 13 , este procedimenteo satisfatrio se x1opt assume valores elevados (12, 13, 14, 15, etc.), mas inapropriado se x1opt est em torno de 1, 2 ou 3, neste caso devemos redefinir x1 para unidades tais como horas ou turno. O Exemplo 3.2 trata do caso em que apenas o custo de capital importante. Exemplo 3.2: FO funo apenas dos custos de capital. Projeto de um vaso de presso. Suponha que ns queremos encontrar a configurao tima que minimiza os custos de investimento num vaso cilndrico de presso. O volume (V) desse vaso conhecido e fixo. Desenvolva uma FO conveniente para este problema. Encontre a relao tima entre altura (L) e dimetro (D), (L/D)opt, e compare o resultado obtido com o critrio emprico de projeto (L/D)opt = 3 . Soluo: Identificao da(s) VDs: obviamente so a altura L e o dimetro D . Identificao do objetivo: Para um ciclo completo de operao e regenerao A FO pode ser definida como: minimizar o custo de fabricao do vaso de presso Para matematizar a expresso da FO temos que inicialmente estabelecer algumas hipteses simplificadores da geometria do vaso H1. Topo e fundo planos. H2. Paredes (lateral, topo e fundo) tem espessura (t) e massa especfica () constantes, e a espessura no depende da presso. H3. O custo de fabricao da lateral, do fundo e do topo o mesmo, em S ($/unidade de peso). H4. No existe perda de material durante a fabricao do vaso, pois existem chapas de metal de todas as dimenses Admitindo as hiptese H1-4 o custo do vaso fica apenas em funo da quantidade de material empregada na fabricao do mesmo:
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

60 custo = S x (peso do material empregado na fabricao do vaso) e a expresso matemtica da FO :


S , ,t , D , L

min f 1

D 2 onde f 1 (S , , t , D, L ) = S 2 4 + DL t em unidade de custo em $

Como S, e t so constantes ento a FO tambm pode ser

min f 2
t ,D,L

D 2 onde f 2 ( , t , D, L ) = + DL t em unidades de peso 2


ou

min f 3
D,L

D 2 onde f 3 (D, L ) = 2 + DL em unidades de area


Note que as trs FO's diferem apenas de fatores multiplicativos constantes, portanto a incluso ou no desses fatores apenas afetar o valor da FO, mas no alterar o valor das variveis de projeto. Logo, por simplicidade, utilizaremos a FO em unidades de rea. Como o volume do vaso cilndrico constante existe uma relao entre altura e dimetro do mesmo:

V=

D 2
4

LL=

4 D 2V

Assim existe apenas uma varivel de deciso e podemos reescrever a FO da seguinte forma

min f 4
D

D 2 4V onde f 4 (D ) = 2 + D em unidades de area


Identificao da(s) restries: no existem restries. Para encontrar o ponto timo temos que diferenciar f4 em relao a varivel de projeto igualar a zero, resultando em

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

61
4V D = e, consequentemente
opt 1/ 3

4V L = ou seja
opt

1/ 3

L D

opt

=1

Logo a razo (L/D)opt obtida significativamente diferente da esperada (L/D = 3). Esta diferena pode ser devida a escolha de hipteses inapropriadas. Brummerstedt (1944)# e Happel e Jordan (1975)@ desenvolveram hipteses mais realistas para o problema do dimensionamento de vasos de presso: H1. Topo e fundo tem o formato de elipses 2:1, com uma rea dada por 2(1,16D2) = 2,32D2 H2. Custo de fabricao das extremidades maior que para a lateral; Happel sugere um fator de 1,5. H3. O custo de fabricao por unidade de peso S ($/unidade de peso) e massa especfica () so constantes. H4. A espessura t funo do dimetro do vaso, do esforo a que o ao ser submetido, da presso e da corroso admissveis. Por exemplo, para uma presso de projeto de 250 psi (17 atm) e uma corroso prevista de 1/8 in, a espessura t (em polegadas) em funo do dimetro D (em ps): t = 0,0108D + 0,125 Identificao da(s) variveis de deciso: considerando as discusses anteriores a nica VD o dimetro D do vaso.

# Brummerstedt, E. F., Natl. Pet. News, 36, R282, R362, R497 (1944). @ Happel, J. e D. G. Jordan, Chemical Process Economics, 2a. edio,

Marcel Dekker, New

York (1975). Ricardo Kalid - Otimizao de Processos kalid@ufba.br

62 Identificao do objetivo: o mesmo anterior, ou seja, minimizar o custo de fabricao do vaso de presso As novas hipteses foram a FO a ser expressa em dlares, pois a rea ou o peso no so mais diretamente proporcionais ao custo, assim a nova FO

onde f 5 (S , , t , D, L ) = S 1,5(2,32 D 2 ) + DL t

S , ,t , D , L

min f 5

unidade de custo em $

Substituindo t(D) em f5 e lembrando que S e so constantes e que


V=

D 2

D L + 4 3

obtemos
min f 6
D

onde f 6 (D ) = 0,0432V + 0,5

V + 0,3041D 2 + 0,0263D 3 D

unidade de custo em $

Identificao da(s) restries: no existem restries. Ao solucionar este problema para diferentes nveis de presso Happel apresentou a seguintes solues: Ponto timo: (L/D)opt Presso de projeto (psi) Capacidade (ft3) 2500 25000 100 1,7 2,2 250 2,4 2,9 400 2,9 4,3

Observe que o ponto timo se aproxima da razo 1 medida que a presso e a capacidade do tanque diminuem e que o valor emprico (L/D = 3) pode estar errado em 50 % em relao ao (L/D)opt. Ainda necessria uma interpretao cautelosa desses resultados pois no foram consideradas as perdas de material durante a fabricao. Consideremos agora um exemplo que leva em conta os custos de capital e operacionais.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

63 Exemplo 3.3: FO funo dos custos de capital e operacionais. Especificao da espessura tima de um isolamento. Suponha que ns queremos encontrar a espessura do isolamento para uma tubulao. Neste caso necessrio considerar os custos de investimento e a da energia economizada devido ao incremento do isolamento. Neste exemplo iremos determinar a espessura tima de isolamento para uma tubulao larga que contm um lquido aquecido. Rubin (1982)& apresentou tabelas que mostram a espessura econmica de isolamento como uma funo da dimenso da tubulao, custo de combustvel e temperatura do tubo, baseado num ambiente com ventos a 7.5 milhas por hora (12 km/h) a 60oF (15,5 oC). Hipteses: H1. A taxa de perda de calor por um cilindro largo e isolado, no qual a espessura de isolamento muito menor que o dimetro do cilindro e que o coeficiente de transferncia de calor do lado de dentro do tubo grande, pode ser aproximado por:
Q= AT x 1 + k hc

(a)

onde:
o

T
A x hc k Q

- diferena mdia de temperatura entre o fluido e o ambiente [=] rea da superfcie do tubo [=] ft2 espessura do isolamento [=] ft coeficiente externo de transferncia de calor [=] Btu/(h.ft2.oF) condutividade trmica do isolante [=]Btu/(h.ft.oF) perda de calor [=] Btu/h

Todos os parmetros na Equao (a) tem valor fixo, exceto x a varivel a ser otimizada (varivel de deciso). H2. O custo de instalao do isolamento por unidade de rea pode ser expresso por F0 + F1.x , onde Fo e F1 so constantes (Fo = custo fixo de instalao e F1 = custo varivel por espessura do isolamento em ft). O isolamento tem um tempo de vida de 5 anos e deve ser trocado ao final deste perodo. A verba para compra e instalao do isolamento obtida por emprstimo e ser paga em 5 prestaes anuais.

H3. H4.

Defina: r como a frao do custo de instalao que ser pago a cada ano ao banco. O valor de r depende da taxa de juros do emprstimo (r > P/5). Alternativamente, pode-se utilizar verbas prprias, e neste caso um taxa mnima de retorno deve ser especificada.

Rubin, F. L., "Can you Justify more Piping Insulation," Hydrocarbon Process, p. 152 (July, 1982). Ricardo Kalid - Otimizao de Processos kalid@ufba.br

&

64 Ht ($/106Btu) o custo de reposio do calor perdido Y o nmero de horas de operao por ano. Formule uma funo objetivo para maximizar a lucratividade da instalao do isolamento. Obtenha uma soluo analtica para xopt. Soluo: Identificao dos variveis de deciso: espessura do isolamento. Identificao do objetivo: FO pode ser definida como maximizar a economia de energia menos o custo anual do isolamento. Temos que inicialmente estabelecer uma unidade comum a todos, por exemplo, $/ano. Assim o pagamento por ano (P) que deve ser feito ao banco

P = r (F0 + F1 x ) A

(b)

A energia economizada devido ao isolamento pode ser calculada a partir da diferena entre o calor perdido com (Q) e sem isolamento [Q(x = 0) ou Q0]:
Q0 Q = hc AT AT x 1 + k hc

(c)

Assim a expresso matemtica da FO (em dlares por ano)

min f (hc , A, T , k , F0 , F1 , r , x ) onde f (hc , A, T , k , F0 , F1 , r , x ) = (Q0 Q ).Y .H t (F0 + F0 x ). A.r


Identificao da(s) restries: no existem restries.
x

(d)

Substituindo (c ) em (d), diferenciando f em relao a x e igualando a zero, obtemos:

x opt = k

H t .Y .T 1 6 10 .k .F .r h c 1

(e)

3.1.3.

Objetivos Operacionais

Podemos ainda escrever funes objetivos que minimizem o tempo de processamento, ou maximizem a produo, ou minimizem a diferena entre o valor desejado e o valor medido das variveis de processo. Em todos esses casos no consideramos o custo, ou lucro, ou qualquer outro valor econmico, mas apenas critrios tcnicos. No Exemplo 3.4. temos um problema de reconciliao de dados, que nada mais que um problema de otimizao cuja FO leva em conta apenas objetivos operacionais.
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

65

Exemplo 3.4: FO funo apenas de um objetivo operacional/tcnico. Reconciliao de dados de Processos. Suponha que as vazes de alimentao e descarga de um processo so medidas periodicamente. Determine o melhor valor da vazo mssica da corrente A (MA) em kg/h para o processo mostrado na figura 3-p. As correntes B e C foram medidas em intervalos de 1 hora. A B MB1 = 92,4 kg/h MB2 = 94,3 kg/h MB3 = 93,8 kg/h

Planta C MC1= 11,1 kg/h MC2= 10,8 kg/h MC3= 11,4 kg/h

Figura 3-P: Diagrama de blocos do processo do Exemplo 3.4. Soluo: Identificao da(s) variveis de deciso: obviamente MA Identificao do objetivo: A FO pode ser definida como: minimizar a soma dos quadrados dos desvios entre MA medido e esperado Para matematizar a expresso da FO temos que inicialmente estabelecer algumas hipteses simplificadores do sistema: H.1. O processo est em estado estacionrio. H.2. As medies das correntes B (MB) e C (MC) esto corretas. Modelo do processo (balano de massa): o que entra = o que sai MA + MC = MB ento a FO pode ser escrita como: (a)

min f (M A )
MA

onde f (M A ) =
para os dados deste problema:

no.exp i =1

[M

rec A

M Bi M Ci

)]

(b)

f(MA) = [MA - (92,4 - 11,1)]2 + [MA - (94,3 - 10,8)]2 + [MA - (93,8 11,4)]2 (c) Identificao da(s) restries: no existem restries.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

66 Diferenciando (c) em relao a MA e igualando a zero, obtemos MAopt = 82,4. Neste caso MAopt = Mbmed - MCmed O valor mnimo que f(MA) pode alcanar zero. Outros mtodos de reconciliao de balanos de massa e energia so discutidos por Tamhane e Mah (1985)@. No Exemplo 3.5. temos outro caso de FO com critrio apenas tcnico/operacional. Exemplo 3.5: FO funo apenas de um objetivo operacional. Tempo de residncia timo de um reator a batelada. O esquema reacional abaixo acontece num reator a batelada bem agitado. A k1 k2 k3 B k4 D C

Para as concentraes iniciais e constantes das taxas CAo = 50 g-mol/L k1 = 2,0 h-1 CBo = 5 g-mol/L k1 = 1,0 h-1 CCo = 0 g-mol/L k1 = 0,2 h-1 CDo = 0 g-mol/L k1 = 0,6 h-1 calcule o tempo de residncia timo para obter um mximo rendimento a CB. Soluo: Identificao das variveis de deciso: a priori k1, k2, k3, k4, CA, CB, CC, CD e tempo de residncia Identificao do objetivo: A FO pode ser definida como maximizar a concentrao do produto desejado B ou

max

C B ( k 1 , k 2 , k 3 , k 4 , C A , C B , CC , C D , t )

(a)

Para matematizar a expresso da FO temos que inicialmente estabelecer algumas hipteses simplificadores do sistema: H1. O sistema no troca massa com o meio. H2. Reator opera isotermicamente. H3. Equaes das taxas de 1a ordem.

Tamhane, A. C., e R. S. H. Mah, "Data Reconciliation and Gross Error Detection in a Chemical Process Network", Technometrics, 27: 409 (1985). Ricardo Kalid - Otimizao de Processos kalid@ufba.br

67 H4. Reao em fase lquida, portanto podemos admitir volume constante. Modelo do processo balano de massa por componente: acmulo = formado - consumido
dC A = k 2 C B k1 C A dt

(b) (c) (d) (e)

dC B = k1C A (k 2 + k3 + k 4 )C B dt
dC C = k 3C B dt
dC D = k 4C B dt

balano de massa global: massa inicial = massa final ou, lembrando que os coeficientes estequiomtricos das reaes so todos iguais, em termos do nmero de moles, o balano global pode ser escrito como: no moles inicial = no moles final Lembrando ainda que o volume reacional constante, o balano global pode ser escrito em termos da concentrao dos reagentes e produtos como: concentrao inicial reag. + prod. = concentrao final reag. + prod. ou CAo + CBo + CCo + CDo = CA + CB + CC + CD (f) Queremos apenas encontrar o tempo de residncia que maximiza CB, portanto tentaremos escrever a CB como uma funo apenas do tempo. Resolvendo a equao (c ) para CA

CA =

1 dC B dt + (k 2 + k 3 + k 4 )C B k1

(g)

Diferenciando (g) em relao ao tempo


dC A 1 d 2 C B dC = + (k 2 + k 3 + k 4 ) B dt k1 dt 2 dt

(h)

Substituindo (g) e (h) em (b) obtemos uma equao de segunda ordem linear homognea em CB:

d 2C B dC + (k1 + k 2 + k 3 + k 4 ) B + [k1 (k 2 + k 3 + k 4 ) k1 k 2 ]C B = 0 (i) 2 dt dt


cuja soluo, para este caso em que as raizes da equao caracterstica so reais e distintas, dada por
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

68

C B (t ) = 1 e 1 + 2 e
t

2t

(j)

onde 1 e 2 so as razes da equao m2 + (k1 + k2 + k3 + k4).m+[k1(k2 + k3 + k4) - k1.k2] = 0 (k) As constantes 1 e 2 so obtidas aplicando as condies iniciais s equaes (j) e (g). Substituindo os encontramos valores numricos nas respectivas variveis,

1 = 37,940 2 = -32,940 1 = - 0,482 2 = - 3,318


Identificao da(s) restries: no existem restries. Finalmente diferenciando (j) em relao a t e igualando a zero obtemos o ponto t* que maximiza CB: t* = 0,63 h ; CB* = 23,04 g-mol/L

Um outro tipo de FO que depende apenas de objetivos operacionais aparece em problemas de controle timo e de controle preditivo com otimizao online. Em um sistema de controle impossvel eliminar por completo as diferenas entre os valores desejados ou setpoints (SPs) e os valores medidos das variveis controladas ou variveis de processo (PVs), portanto os sistemas de controle procuram minimizar essas diferenas, ou seja
min SP (t ) PV (t )

Equao 3-H A barra embaixo das variveis indica que a varivel um vetor, quando o sublinhado for duplo indica matriz, pois no caso geral e mais freqente o sistema de controle MIMO (multiple-input-multiple-output). Contudo a manipulao matemtica da funo mdulo muito complexa, por isso prefervel escrever a funo objetivo atravs de uma funo quadrtica. Assim a equao 3-h transformada em: 2 min [SP(t ) PV (t )]

Equao 3-I ou

Maiores informaes sobre controle preditivo pode ser encontrado em DMC: Controle por Matriz Dinmica. Apstila de Curso Ministrado na Copene de autoria de Ricardo de Arajo Kalid e Darci Odloak, setembro de 1994. Ricardo Kalid - Otimizao de Processos kalid@ufba.br

69

min [E (t )] min [E (t )] [E (t )]
2 T

Equao 3-J onde E = SP PV vetor dos desvios (erro) entre o valor desejado e os valores previstos Porm atender a equao 3-j pode significar aplicar uma energia muito grande ao processo, ou seja as MVs assumiriam valores muito grandes (ou pequenos) que violariam as restries de qualquer sistema fsico. Para amenizar este problema acrescentamos funo objetivo um termo que limite a variao das MVs:

min [E (t )] W1 [E (t )] + [ MV (t )] W2 [ MV (t )]
T T

Equao 3-K onde W1 matriz diagonal que define a importncia relativa das PVs entre si W2 matriz diagonal que limita a variao das MVs

3.1.4. Combinao de Objetivos Operacionais com Objetivos Econmicos


Podemos ainda acrescentar funo objetivo descrita pela equao 3-k critrios econmicos, como por exemplo minimizao dos custos operacionais (minimizar consumo de utilidades ou de energia), desta forma o objetivo do sistema de controle seria determinado por

min [E (t )] W1 [E (t )] + [ MV (t )] W2 [ MV (t )] + [ (MV (t ))]


T T

Equao 3-L onde

(MV)

funo que pondera a importncia dos objetivos econmicos em comparao com os objetivos de controle (operacionais).

A formulao do problema de controle preditivo timo se d na medida em que a funo objetivo, equao 3-l, avaliada no apenas para o instante de tempo atual, mas para um certo horizonte no futuro (horizonte de otimizao).

3.2.

As Funes de Restrio (FR)

A grande maioria dos problemas de otimizao de interesse prtico tem que atender a um conjunto de restries de natureza R1. operacional, por exemplo as MV's devem permanecer dentro de limites mximos e mnimos e/ou a variao das MV's (MV) menor que uma variao mxima, etc;

Maiores informaes sobre controle preditivo podem ser encontradas em DMC: Controle por Matriz Dinmica. Apstila de Curso Ministrado na Copene de autoria de Ricardo de Arajo Kalid e Darci Odloak, janeiro de 1995. Ricardo Kalid - Otimizao de Processos kalid@ufba.br

70 R2. fsica, por exemplo limites mximo para temperaturas a depender dos materiais presentes no processo, mxima capacidade produtiva da unidade, fechamento dos balanos de massa e energia, frao molar deve estar entre 0 e 1, temperatura e presso absoluta maior que 0, etc; R3. mercadolgica, por exemplo deve atender a uma demanda mnima e/ou consumir uma quantidade mxima de matria-prima e/ou de energia, etc. Portanto para que o problema de otimizao tenha uma soluo correta tais restries devem ser explicita e matematicamente escritas. A formulao do problema de otimizao s estar completa se estabelecemos a FO e as suas FR's. No Exemplo 3.1. a hiptese H1. na verdade uma restrio operacional. No a levamos em conta no momento da soluo do problema matemtico, mas para validar a resposta tivemos que arredondar a mesma. No raro este procedimento observado na prtica, porm devemos ter sempre em mente que encontraremos apenas uma soluo sub-tima. No Exemplo 3.2. a considerao de volume fixo uma restrio fsica (capacidade necessria para o equipamento). Neste caso foi possvel incorporar diretamente a restrio na FO, o que simplifica a resoluo do problema. Tambm nos problemas de controle timo devemos incorporar restries quanto a variao das MV's e aos valores extremos que as mesmas podem atingir. Assim a equao 3-l deve ser reescrita da maneira que se segue
min [E (t )] W1 [E (t )] + [ MV (t )] W 2 [ MV (t )] + [ (MV (t ))]
T T

sujeito a

MV (t )min MV (t ) MV (t )max

MV (t )min MV (t ) MV (t )max

Equao 3-M

3.3.

Otimizao On-Line

Neste ponto vale a pena comentar um pouco sobre a otimizao on-line de processos qumicos. Como o prprio nome j diz, um problema de otimizao, como os vistos anteriormente, cujas variveis so atualizadas automativamente com as atuais condies operacionais do processo e resolvido, isto , o valor das variveis de deciso encontrado, com uma freqncia relativamente elevada, por exemplo 20 vezes por hora. Porm s podemos pensar na implementao da otimizao on-line do processo, ou seja, na implantao de uma metodologia que periodicamente defina qual os set-points para que uma determinada unidade ou planta opere nas condies economicamente timas, uma vez estabilizada a operao da

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

71 unidade, por exemplo atravs da implementao de um algoritmo tipo MPC (multivariable predictive control ou controle preditivo multivarivel, tais como DMC, DMCL, LDMC, QDMC, GPC). Essa otimizao em linha pode ser implementada de duas formas: a) Um MPC seguindo setpoints enviados por um otimizador hierarquicamente superior, figura 3-q, neste caso necessrio um sistema supervisor que calcule e envie para o MPC os SPs.
O T IM IZA D O R
S P s das P Vs

M Vs e P Vs

MPC

P VS

M Vs

P LA N T A

Figura 3-Q: MPC Supervisionado por Otimizador On-Line b) MPC com otimizao intrnseca, figura 3-r, neste caso a condio operacional tima obtida simultaneamente com o atendimento das restries operacionais. Esta configurao mais moderna e aparenta ser mais eficiente que a anterior, mas ainda se encontra em fase de desenvolvimento nos meios acadmicos.

MPC COM OTIMIZAO

PVS

MVs

PLANTA
Figura 3-R: MPC com Otimizao Intrnseca

Maiores informaes sobre controle preditivo podem ser encontradas em DMC: Controle por Matriz Dinmica. Apstila de Curso Ministrado na Copene de autoria de Ricardo de Arajo Kalid e Darci Odloak, setembro de 1994. Ricardo Kalid - Otimizao de Processos kalid@ufba.br

72

3.4.

Exerccios

E3.1.Uma central de insumos bsicos produz, armazena e distribui vrias matrias-primas para outras empresas, conforme a figura 3-s.
x x Processo 1
1,1

T1 T2 T3 T4

1,2

x2,1 x3,1 x
4,1

x 2,2 x 3,2 x
4,2

_ _ 1,3 x 2,3 _ x 3,3

T5 T6

x 1,4 x
2,4 3,4

Processo 3 x

x T7 x

5,2

4,4

Figura 3-S: Diagrama de blocos do parque de tancagem onde Ti (i = 1, ... , 7) so tanques de armazenamento. Para a distribuio dos produtos so feitos contratos por perodos pr-determinados, com demandas mnimas a serem necessariamente atendidas pela empresa. Desenvolva uma Funo Objetivo com suas restries que minimizem o custo de armazenamento. Escreva a FO em funo dos custos Ci e da massa armazenada em cada tanque mi . onde: Ci = custo do produto armazenado; mi = massa do produto armazenado. Dados referentes ao processo: Restries de processamento : 10 ton/h < x1 < 50 ton/h 6 ton/h < x3 < 30 ton/h. Capacidade de armazenamento dos tanques: 100 ton < mi < 500 ton, i = 1, ..., 7 Inicialmente todos os tanques esto com 120 ton. O balano de massa tem que ser atendido:

x1,1 = a1,1 + b1,1 x1 x 2,1 = a 2,1 + b2,1 x1 x 3,1 = a 3,1 + b3,1 x1 x 4,1 = a 4,1 + b4,1 x1

x1,3 = a1,3 + b3,1 x 3 x 2 , 3 = a 2 , 3 + b2 , 3 x 3 x 3, 3 = a 3 , 3 + b 3, 3 x 3

As demandas dos seguintes produtos so conhecidas:


Ricardo Kalid - Otimizao de Processos kalid@ufba.br

73

x1, 2 = 6 t / h x 2, 2 = 4 t / h x 3, 2 = 3.5 t / h

x1, 4 = 3 t / h x 2, 4 = 7 t / h x 3, 4 = 4 t / h x 4, 4 = 5 t / h

Custos de estocagem em dlares/ton. C1 = 500 C2 = 600 C3 = 900 C5 = 1000 C6 = 700 C7 = 1500

C4 = 200 As constantes das relaes lineares so conhecidas: b1,1 = 0.2 b2,1 = 0.1 b3,1 = 0.1 b4,1 = 0.6 b1,3 = 0.2 b2,3 = 0.5 b3,3 = 0.3 Ref: Curso de Otimizao ministrado pelo LSCP/DEQ/EPUSP PETROBRAS. E3.2.Uma planta qumica faz trs produtos (E, F, G) e utiliza trs matriasprimas (A, B, C) cujo suprimento limitado. Cada um dos trs produtos obtido em processo separado (1, 2, 3) de acordo com o esquema mostrado na figura 3-t.
Monmero A

ai,1 = 0 i = 1, ... , 4

ai,3 = 0 i = 1,2 3.

2 Monmero B

Inibidor C

Figura 3-T: Diagrama de blocos de uma planta multiprodutora As matrias-primas A, B e C no tm de ser totalmente consumidas.
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

74 Dados do processo: Matria Prima A B C Mximo disponvel, lb / dia 4000 3000 2500 Custo $ / 100 lb 1.50 2.00 2.50 Custo Operacional Preo de venda do produto $4.00/100 lb E

Process Produto Reagentes o necessrios (lb) por lb produto 1 E 2/3 A, 1/3 B 2 3 F G

$1.50/100 lb A (consumido em 1) 2/3 A, 1/3 B $0.50/100 lb A $3.30/100 lb F (consumido em 2) 1/2 A, 1/6 B, 1/3 C $1.00/100 lb G $3.80/100 lb G (produzido em 3)

Desenvolva a funo objetivo e as restries deste problema de otimizao. Assumindo que h uma demanda mnima de produtos a ser atendida, conforme a tabela abaixo, como ficaria a FO? e as FR's? Demanda Mnima, lb / dia 2500 1500 1800

Produto E F G

Ref: Edgar, T. F. & Himmelblau, D. M. "Optimization of Chemical Processes" E3.3.Programao de produo de uma refinaria. A figura 3-u mostra as alternativas de carga e os produtos possveis de serem obtidos numa refinaria de petrleo (custo e preo de venda esto entre parenteses). A tabela 3-a lista o rendimento da unidade a depender do tipo de carga processada. Note que os rendimentos para os vrios produtos so bastante diferentes para os dois tipos de petrleo. A tabela 3-a tambm lista todas as limitaes impostas pelo mercado em termos de produo mxima diria admissvel para cada produto e o custo de processamento de cada tipo de carga. Custo ($ 24/bbl) Refinaria Petrle o ($15/bbl) Preo de venda Gasolina ($36/bbl) Querosene ($24/bbl) leo ($21/bbl) combustvel

Petrle o

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

Resduo ($10/bbl)

75

Figura 3-U: Diagrama de blocos de uma refinaria Tabela 3-A: Dados de rendimento da refinaria e do mercado Porcentagem de rendimento volumtrico Petrleo tipo 1 Petrleo tipo 2 80,0 44,0 5,0 10,0 10,0 36,0 5,0 10,0 0,5 1,0 Produo mxima (bbl/dia) 24000 2000 6000

Gasolina Querosene leo combustvel Resduo Custo de processamento ($/bbl) Pede-se:

a) Desenvolva uma funo objetivo linear. b) Estabelea as restries. c) Desenhe num grfico as curvas das restries. d) Identifique no grfico a regio vivel. e) Calcule nas intersees entre as curvas das restries o valor alcanado pela FO e verifique qual o ponto timo. Ref: Edgar, T. F. & Himmelblau, D. M. "Optimization of Chemical Processes". E3.4.Programao de uma unidade de craqueamento trmico. A figura 3-v mostra os vrios componentes da alimentao e a corresponde converso aos vrios produtos devido ao craqueamento trmico. As possveis cargas incluem etano, propano, gasolina natural debutanizada (DNG) e gasleo, algumas das quais podem ser alimentadas simultaneamente. Oito produtos podem ser produzidos em vrias propores de acordo com a matriz mostrada na tabela 3-b.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

76 DNG Gasle Propan o Etano Etano leo combustvel Craqueamento trmico Propan

Metano leo combustvel

Figura 3-V: Diagrama de blocos do craquemento trmico Tabela 3-B: Rendimento aos produtos (frao mssica) Alimentao Produto Metano Etano Etileno Propano Propileno Butadieno Gasolina leo combustvel Etano 0,07 0,40 0,50 --0,01 0,01 0,01 --Propano Gasleo DNG 0,25 0,06 0,35 0,10 0,15 0,02 0,07 --0,10 0,04 0,20 0,01 0,15 0,04 0,25 0,21 0,15 0,05 0,25 0,01 0,18 0,05 0,30 0,01

Etileno Propilen Butadieno Gasolina o

A capacidade de processamento do craqueador de 90,7 ton/h (vazo total baseada numa mistura mdia). Etano usa o equivalente a 1,1 ton da capacidade por ton de etano; propano usa o equivalente a 0,9 ton da capacidade por ton de propano; gasleo usa o equivalente a 1,1 ton da capacidade por ton de gasleo; e DNG utiliza uma razo de 1,0. As unidades a jusante tem uma capacidade mxima de processamento limitada a 22,7 ton/h de etileno e 9,1 ton/h de propileno. O combustvel necessrio ao processamento de cada tipo de substncia presente na carga apresentado na tabela 3-c. Tabela 3-C: Consumo de combustvel por tipo de carga Componente da carga Etano Propano Gasleo DNG Combustvel processamento requerido para

4,65x103 kcal/kg 2,79 x103 kcal/kg 2,17 x103 kcal/kg 2,53 x103 kcal/kg
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

77 O metano e leo combustvel produzido pela unidade so reciclados como combustvel. Todo o etano e propano no convertidos so reciclados para a alimentao. A energia fornecida por cada tipo de combustvel mostrada na tabela 3-d. Tabela 3-D: Calor fornecido pelos combustveis Tipo combustvel Gs natural Metano leo combustvel de Energia liberada combusto 11,96 x103 kcal/kg 11,96 x103 kcal/kg 10,00x103 kcal/kg na

Devido a perda de calor a energia necessria para a pirlise, uma quantidade fixa de energia igual a 5,04 kcal/h, deve ser fornecida ao forno. O preo de compra dos combustveis, da carga e dos produtos so mostrados na tabela 3-e. Tabela 3-E: Preo de compra e venda dos insumos Subtncia Etano (preo de compra) Propano (preo de compra) Gasleo (preo de compra) DNG (preo de compra) Metano (preo de venda como combustvel) Etileno (preo de venda) Propileno (preo de venda) Butadieno (preo de venda) Gasolina (preo de venda) leo combustvel combustvel) Pede-se: a) Desenvolva uma funo objetivo linear que maximize o lucro da unidade. b) Estabelea as restries operacionais e/ou fsicas e/ou de merdado a que o craqueador esta submetido. Ref: Edgar, T. F. & Himmelblau, D. M. "Optimization of Chemical Processes". (preo de venda como Preo ($/kg) 0,1444 0,2145 0,2756 0,2235 0,1186 0,3913 0,3040 0,5873 0,2189 0,0992

E3.5.Discutas as duas FO's abaixo, compare-as apontando suas igualdades e diferenas.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

FO1 = min W1 E (t ) W1 E (t ) + W2 MV (t ) W2 MV (t ) + I (MV (t )) I (MV (t ))


T T
T

{[

][

][

][

][

]}

78

FO2 = min W1 E (t ) + W 2 MV (t ) + I (MV (t )) W1 E (t ) + W2 MV (t ) + I (MV (t ))


T

{[

][

]}

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

79

4. Otimizao Unidimensional Sem Restries (OUSR)


O estudo de mtodos de otimizao unidimensionais sem restries (OUSR) necessrio por quatro motivos: M1. Alguns problemas sem restrio so tambm unidimensionais. M2. Em muitos problemas as restries podem ser incorporadas funo objetivo reduzindo, desta forma, o problema a uma varivel. M3. As tcnicas para problemas multidimensionais com e sem restries geralmente envolvem repetir inmeras vezes a resoluo de um problema unidimensional sem restries. M4. Ajuda na soluo de problemas de otimizao cujo intervalo de busca (regio vivel) no conhecido. Podemos classificar os mtodos numricos para resoluo dos problemas de OUSR em: C1. Mtodos diretos (MD's): procedimentos de busca do ponto timo atravs da comparao direta do valor assumido pela FO em uma seqncia de pontos viveis. No envolve o clculo de derivadas analticas ou numricas. C2. Mtodos Indiretos (MI's): utiliza as condies necessrias para existncia de pontos estacionrios, ou seja, usa a derivada para clcular o ponto timo. Se o clculo da derivada for realizado numericamente a distino entre os mtodos diretos e indiretos fica comprometida, pois ambos os mtodos vo avaliar a FO em uma seqencia de pontos. Os mtodos indiretos, quando aplicveis, isto quando existe a derivada, geralmente so mais rpidos que os mtodos diretos. Entretanto como nos problemas de engenharia a preciso necessria para os resultados freqentemente baixa, devido s incertezas presentes na funo objetivo, esta vantagem neutralizada. Por outro lado, os mtodos diretos tem a vantagem de tratar mais facilmente problemas que tem descontinuidade e/ou pontos de inflexo. Em problemas de Otimizao Multidimensional Sem Restries (OMSR), com a FO no-linear e com mais de uma varivel os MD's tem se mostrando superior em relao aos MI's. Por exemplo, suponha que a funo no-linear f(x) = f(x1,x1,...,xn) deva ser minimizada. As condies necessrias para encontrar os pontos estacionrios so

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

80

f ( x ) = f x (x ) = 0 x1 f ( x ) = f x (x ) = 0 x 2
1 2

f ( x ) = f x (x ) = 0 x n
n

Equao 4-A Cada derivada parcial igualada a zero constitui uma equao no-linear, assim o problema de OMSR transformou-se num sistema algbrico de equaes nolineares, um problema to difcil de resolver quanto o original. Alm disso, enquanto que a matriz Hessiana H(x) de f(x) simtrica, o Jacobiano das equaes das condies necessrias tem uma estrutura arbitrria, o que dificulta a resoluo do problema. Assim, muitos engenheiros preferem atacar o problema de minimizao/maximizao por MD's em lugar de utilizar MI's. A seguir, na seo 4.1 apresentaremos os MI's mais utilizados em problemas de OUSR da engenharia qumica, enquanto na seo 4.2 estudaremos os MD's.

4.1.

Mtodos Indiretos (MI) para OUSR

Existem basicamente 4 procedimentos para resolver problemas de OUSR envolvendo a aplicao das condies necessrias de otimalidade para uma funo: MI1. Mtodo de Newton MI2. Aproximao por diferenas finitas do mtodo de Newton, tambm chamado de mtodo de quasi-Newton MI3. Mtodo da secante Para comparar a eficincia desses mtodos conveniente examinar a taxa de convergncia de cada um, isto , a velocidade com que a soluo alcanada. A taxa de convergncia pode ser expressa de vrias maneiras, mas uma classificao comum a seguinte: Linear:

k +1 k

x x

0 1

Equao 4-B Onde o super-escrito k se refere a iterao k e no uma potncia de x. Na resoluo de problemas prticos se o mtodo apresenta uma taxa de convergncia linear sua velocidade lenta.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

81 O smbolo ||.|| dimensional: indica a norma Euclidiana de um vetor. Para x n-

x =

x
i =1

2 i

Equao 4-C Ordem p:


k +1

x x
k

0 1

Equao 4-D Na resoluo de problemas prticos se o mtodo apresenta uma taxa de convergncia de ordem p > 1 sua velocidade rpida. Se p = 2 , a ordem de convergncia dita quadrtica. Superlinear:
k +1 k

x
lim
k

x x

= 0 ou < k e k 0 quando k
Equao 4-E

Na resoluo de problemas prticos se o mtodo apresenta uma taxa de convergncia superlinear sua velocidade rpida. O algoritmo de qualquer um dos MI's para minizar f(x) pode ser resumido da seguinte forma: P1. Escolha um intervalo de busca que contenha o ponto de mnimo e que a FO seja unimodal neste intervalo. P2. Defina uma tolerncia. P3. Aplique o mtodo at que a tolerncia seja alcanada, certificando-se a cada iterao que f(xk+1) < f(xk) . Quanto mais positivo for f"(xk) , ou sua aproximao, mais rapidamente f(x) diminuir. Para maximizar f(x) , minimize -f(x) .

4.1.1.

Mtodo de Newton

Lembremos sempre que o objetivo minimizar (ou maximizar) uma certa funo f(x), lembremos tambm que no momento estamos estudando apenas o caso monovarivel. Vamos rever o mtodo de Newton para resoluo de uma equao nolinear. Este mtodo est baseado na expanso da funo em srie de Taylor e truncamento da mesma no segundo termo. Assim expandindo f(x) em torno de um ponto xk obtemos:
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

82
f (x ) = f x k + x x k

( ) (

( )dfdxx )

f (x ) = f x k + x x k . f x k
xk

( ) (

) ( )

Equao 4-F como qualquer funo pode ser escrita da forma f(x) = 0 , ento podemos reescrever a equao 4-f, se a aproximao e truncamento executado acima forem vlidos, da seguinte maneira:

f (x ) = f x k + x x k . f x k = 0 x = x k
Equao 4-G

( ) (

) ( )

f xk f xk

( ) ( )

Ao trocar x por xk+1 na equao 4-g obtemos o mtodo de Newton para resoluo de uma equao no-linear. Agora podemos resolver o problema de OUSR, ou seja resolver a equao no-linear f'(x) = g(x) = 0 pelo mtodo de Newton, utilizando a frmula de recorrncia:

x k +1 = x k

g xk f xk x k +1 = x k g xk f x k
Equao 4-H

( ) ( )

( ) ( )

Como a convergncia deste mtodo no garantida temos que nos assegurar que a cada iterao f(xk+1) < f(xk) para que o mnimo seja alcanado [f(xk+1) > f(xk) para o mximo]. As vantagens do mtodo de Newton so: V1. O procedimento tem convergncia quadrtica local (p = 2 na equao 4d) se f "(x) 0 no ponto timo. V2. Para uma FO quadrtica o mnimo obtido em uma iterao, pois a expanso e truncamento da srie de Taylor da funo f(x) at o termo da 2a derivada (inclusive) exata. V3. Converge rapidamente quando a estimativa inicial boa. As desvantagens do mtodo de Newton so: D1. S se aplica a funes onde existam f '(x) e f "(x) . D2. Deve-se calcular a cada iterao f '(x) e f "(x) . D3. Sensvel estimativa inicial. D4. Se f "(x) 0 a convergncia lenta.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

83 D5. Se existe mais de um extremo o mtodo pode no convergir para o ponto desejado ou pode oscilar.

4.1.2.

Mtodo de Quasi-Newton

Um mtodo de quasi-Newton uma variante do mtodo de Newton. Quando f(x) no dada por uma frmula, ou a frmula muito complicada para ser analiticamente derivada, podemos trocar as derivadas que aparecem na equao 4-h por aproximaes de diferenas finitas. Existem vrias maneiras de utilizar aproximao de derivadas por diferenas finitas, por exemplo: DF1. Diferenas finitas para trs:

f ( x ) f ( x x ) x f ( x ) 2 f ( x x ) + f ( x 2x ) f ( x ) = x 2 f ( x ) =
Equao 4-I DF2. Diferenas finitas para frente:

f ( x + x ) f ( x ) x f ( x + 2x ) 2 f ( x x ) + f ( x ) f ( x ) = x 2 f ( x ) =
Equao 4-J DF3. Diferenas finitas para central:

f ( x + x ) f ( x x ) 2x f ( x + x ) 2 f ( x ) + f ( x x ) f ( x ) = x 2 f ( x ) =
Equao 4-K Todas essas aproximaes podem ser deduzidas utilizando a expanso em srie de Taylor. Portanto definindo h = x e substituindo, por exemplo, a equao 4-k na equao 4-h, obtemos a seguinte frmula de recorrncia

x k +1 = x k

fx f x k
k

( ) ( )

f ( x + h) f ( x h) [ f (x + h) f (x h)] / 2h 2h xk = xk f ( x + h) 2 f ( x ) + f ( x h) [ f (x + h) 2 f (x) + f (x h)] / h 2 h2


Equao 4-L

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

84 Esse mtodo tem duas desvantagens em relao ao mtodo de Newton: D1. Necessidade de definir o passo h . D2. Uma funo deve ser avaliada a mais a cada iterao (trs na equao 4-l enquanto duas na equao 4-h).

4.1.3.

Mtodo da Secante

Expandindo uma funo f(x) = 0 em srie de Taylor e truncando no terceiro termo, obtemos
f (x ) = f x + x x
k

( ) (

). f (x ) + (x x )2!. f (x ) = 0
k 2 k k

Equao 4-M Diferenciando a equao 4-m em relao a x e igualando a zero obtemos

f x k + x x k f x k = 0
Equao 4-N Agora em lugar de utilizar a funo f"(xk) usarmos a funo

( ) (

) ( )

f xq f x p m= xq x p
Equao 4-O

( )

( )
xapr*

e resolvendo para o ponto timo aproximado recorrncia


x apr = x q

temos a frmula de

[ ( )

f xq f xq f x p / xq x p

( ) ( )] (

Equao 4-P O ponto timo x* encontrado aps algumas iteraes utilizando a equao 4-p. A derivada f'(x) pode, obviamente ser calculada por diferenas finitas. O algoritmo do mtodo da secante o seguinte a) Escolha dois pontos xp e xq com derivadas de sinal contrrio. b) Calcule xapr* atravs da equao 4-p. c) Calcule f(xapr*) . d) Escolha o novo par de pontos que mantm o sinal contrrio entre as derivadas. e) Volte etapa b at que a tolerncia adimitida seja alcanada. Este mtodo tambm denominado de "regula falsi" ou de falsa posio. O mtodo da secante parece um pouco forado, mas funciona bem em trabalhos prticos. A sua ordem de convergncia de aproximadamente 1,6
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

85 para um problema monovarivel, apesar dessa convergncia ser menor que no mtodo quasi-Newton, termina por ser mais eficiente pois precisa avaliar um nmero menor de funes.

4.2.

Mtodos Diretos (MD) para OUSR

Podemos subdividir os MD's em dois grandes grupos: G1. Mtodos por diminuio da regio de busca. G2. Mtodos por aproximao polinomial da FO.

4.2.1.

Mtodos por Diminuio da Regio de Busca

O algoritmo desses mtodos para minimizao de uma f(x) pode ser assim descrito: P1. Escolha uma regio vivel (a,b) que contenha uma funo unimodal (funo convexa). P2. Calcule f(x) em dois ou mais pontos. P3. Compare os valores de f(x) eliminando as regies que apresentam valores de f(x) maiores. Na figura 4-a(a), a regio a esquerda de x1 contm os valores de f(x) > f(x1) e por isso deve ser eliminada na busca do mnimo de f(x) . Analogamente a regio direita de x2 na figura 4-a(c), f(x) > f(x2) , tambm deve ser descartada. Porm na figura 4-a(b) a funo suave e o ponto de mnimo pode estar em qualquer lugar do intervalo (a,b). Na verdade quando estamos bem prximos do ponto timo este caso ocorre e b - a 0 .

Figura 4-A: 3 possibilidades para f(x) aps dividido o intervalo (a,b) por 2 pontos.
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

86 Conforme seja escolhida a localizao dos pontos mtodo torna-se mais ou menos eficiente: x1 e x2 este

M1. Trs intervalos iguais de busca, isto , x1 - a = b - x2 = x2 - x1 neste caso o intervalo reduzido de 1/3 a cada iterao, assim se L0 o intervalo de busca original (b - a) e Lk o intervalo aps k interaes, ento

2 Lk = L0 3
Equao 4-Q Observe que necessrio avaliar duas vezes a funo iterao. f(x) a cada

M2. Mtodo da seo urea, neste caso o intervalo eliminado manter sempre uma mesma proporo com o intervalo original. Na figura 4-b e na equao 4-r observamos as distncias utilizadas neste procedimento.

Figura 4-B: Seo urea

x + y =1 x+ y y 1 y y = = = y = 0,618 y x y x 1 y
Equao 4-R e

Lk = (0,618) L0
k

Equao 4-S Seja ak e bk so os contornos do intervalo de busca na iterao k , ento o algoritmo para este mtodo o seguinte: P1. determine ak e bk , e a tolerncia P2. Calcule Lk = bk - ak , x1k = ak + 0,382.Lk e x2k = bk - 0,618.Lk P3. Calcule f(x1k) e f(x2k) P4. Se f(x1k) > f(x2k) ento ak+1 = x1k , bk+1 =bk , x1k+1 = x2k Se f(x1k) < f(x2k) ento bk+1 = x2k , ak+1 =ak , x2k+1 = x1k P5. Se a tolerncia no foi atingida volte ao passo P2. Veja a figura 4-c.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

87

Figura 4-C: Seleo dos pontos interiores pela seo urea

4.2.2. Mtodos por Aproximao Polinomial - Interpolao Quadrtica


Outros tipos de MD so os mtodos por aproximao polinomial, entre os quais destacamos o da interpolao quadrtica. Nesses mtodos a funo f(x) aproximada por extrapolao ou interpolao utilizando um polinmio. Coggins (1964) discutiu vrias tcnicas envolvendo um polinmio aproximador, chegando concluso que esses so levemente mais eficientes que o mtodo da seo urea. Admitindo que f(x) unimodal e conhecendo um intervalo de busca que contenha o ponto de mnimo, avaliamos f(x) em x1, x2 e x3 e obtemos f(x1) , f(x2) e f(x3) . Suponha que a funo f(x) possa ser aproximada, numa vizinhana do ponto timo xf(x)* , por uma funo quadrtica g(x) ento

f ( x1 ) g ( x1 ) = a + b.x1 + c.x12

2 f ( x 2 ) g ( x 2 ) = a + b.x 2 + c.x 2 2 f ( x 3 ) g ( x 3 ) = a + b.x 3 + c.x 3

Equao 4-T Mas o mnimo da funo quadrtica g(x) dado por dado por

xg(x) =

b 2c

Equao 4-U Resolvendo a equao 4-t para obter os valores de b e c e substituindo o resultado na equao 4-u obtemos

Coggins, G. F., Univariate Search Methods, Imperial Chemical Industries Ltd., Central Instr. Lab. Res. Note 64/11, 1964 Ricardo Kalid - Otimizao de Processos kalid@ufba.br

88
x
g ( x)

2 2 2 2 1 x 2 x3 g ( x1 ) + x3 x12 g ( x 2 ) + x12 x 2 g ( x3 ) = 2 ( x 2 x3 )g ( x1 ) + ( x3 x1 )g ( x 2 ) + ( x1 x 2 )g ( x3 )

Equao 4-V ento podemos escrever a funo de recorrncia


x
f ( x)

2 2 2 2 1 x 2 x3 f ( x1 ) + x3 x12 f ( x 2 ) + x12 x 2 f ( x3 ) 2 ( x 2 x3 ) f ( x1 ) + ( x3 x1 ) f ( x 2 ) + ( x1 x 2 ) f ( x3 )

Equao 4-W Calculando o valor de f(xf(x)*) e comparando com os valores de f(x1) , f(x2) e f(x3) eliminamos a regio com maior valor de f(x) e aplicamos a equao 4-w. Esse procedimento repetido at atingir a tolerncia especificada. Note que a cada iterao apenas uma funo f(x) avaliada.

4.2.3.

Mtodos por aproximao polinomial - Interpolao cbica

Nesses mtodos a funo f(x) aproximada por extrapolao ou interpolao utilizando um polinmio cbico. Admita que f(x) unimodal e que conhecemos um intervalo de busca que contenha o ponto de mnimo. Suponha que a funo f(x) possa ser aproximada, numa vizinhana do ponto timo xf(x)* , por uma funo cbica g(x) ento

f ( x) g ( x) = a1 .x 3 + a 2 .x 2 + a3 .x + a 4
Equao 4-X Avaliamos f(x) em x1, x2 , x3 e x4 e obtemos f(x1) , f(x2) , f(x3) e f(x4) ento podemos escrever um sistema linear de quatro equaes [f(x1), f(x2), f(x3), f(x4)] e quatro incgnitas (a1, a2, a3, a4):

F = [ f ( x1 )
T

x13 3 x X = 2 3 x3 3 x4
T

x12 2 x2 2 x3 2 x4 a2

x1 x2 x3 x4 a3

A = [a1

f (x2 )

1 1 1 1

a4 ]

f ( x3 )

f ( x 4 )]

F=XA
Equao 4-Y Onde o extremo de f(x) obtido derivando f(x) e igualando a zero

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

89

f (x ) 3a1 .x 2 + 2a 2 .x 1 + a 3 = 0 dx x
apr

2 2a 2 4a 2 12a1 .a3

6a1
Equao 4-Z

O sinal apropriado depende da derivada de 2a ordem de f(xapr*), isto , depende se estamos procurando o mnimo ou o mximo da funo. O vetor A obtido de

A= X

Equao 4-AA Aps obter a primeira aproximao do ponto timo x* , o valor da funo neste ponto comparado com os valores nos outros pontos e descartado o maior deles (menor para maximizao de f(x)).

4.3.

Avaliao dos Mtodos Unidimencionais de Otimizao

Como observamos para que os mtodos estudados sejam eficientes necessrio que

a funo seja unimodal, seja conhecida a regio de busca que contenha o extremo da funo; nos MI's seja dada uma estimativa inicial; nos MI's as derivadas de 1a e/ou de 2a ordem existam.
Devido as maiores exigncias dos MI's, os MD's so preferidos nos meios acadmicos e industrial, e dentre esses os mtodos de interpolao quadrtica ou cbica so mais utilizados. Os cdigos de programao dos pacotes comerciais de otimizao contm vrias regras heursticas que visam resolver problemas com

multiplos extremos, erros de arredondamento, gradiente muito grande da FO, FO com gradiente prximo a zero, outros comportamentos indesejados da FO.
Portanto necessrio conhecer quais os macetes que os programas utilizam para avaliar se os mesmos esto sendo usados corretamente e poder interpretar com segurana os resultados obtidos. E lembremos sempre que
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

90

o julgamento do engenheiro essencial na aceitao ou no das solues encontradas


pelos pacotes computacionais.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

91

4.4.

Exerccios

E4.1.Utilizando variados mtodos indiretos obtenha o extremo das funes a) y1 da Equao 1-A b) f(x) do exerccio E2.5 c) f(x) do exerccio E2.6.a d) f(x) do exerccio E2.6.b e) f(x) do exerccio E2.7 f) f(x) do exerccio E2.10.a g) f(x) do exerccio E2.10.b E4.2.No Exemplo 3.2, verifique se os pontos de mnimo da equao f6(D) para uma presso de projeto de 250 psi, esto corretos. Resolva este problema utilizando um mtodo indireto e um mtodo direto. Compare o nmero de iteraes necessrio para cada procedimento. E4.3.No Exemplo 3.5, verifique se o ponto de mximo da equao (j) est correto. Resolva este problema utilizando o mtodo de Newton, o quasiNewton e o da secante. Compare o nmero de iteraes necessrias para cada procedimento. E4.4.Utilizando a funo fmin('f',x) do toolbox de otimizao do MATLAB resolva os problemas E4.2 e E4.3. Modifique os parmetros do mtodo numrico e verifique o comportamento do mesmo. Se necessrio digite help fmin para ver como a sintaxe deste comando, ou recorra ao manual de referncia do toolbox de otimizao do MATLAB.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

92

5. Otimizao Multidimensional Sem Restries (OMSR)


A otimizao numrica de FO multivariveis no-lineares requer tcnicas eficientes e robustas. A eficincia importante pois os procedimentos para solucionar o problema so sempre iterativos e a tentativa-e-erro torna-se impraticvel quando esto envolvidas mais de 3 ou 4 variveis de deciso. A robustez (habilidade de encontrar a soluo) uma propriedade desejvel pois as FO's no-lineares tem um comportamento imprevisvel, pois podem ter mltiplos extremos, pontos de sela, regies convexas e no convexas, etc. Mas felizmente esto disponveis algoritmos numricos poderosos e que solucionam a maioria dos problemas prticos. Neste captulo discutiremos a soluo dos problemas OMSR que tem a seguinte formulao geral encontre x* = [x1 x2 ... xn]T que minimiza f(x) = f(x1, x2, ..., xn) A maioria dos procedimentos interativos tem duas etapas que se alternam at que a tolerncia desejada seja alcanada, assim podemos descrever os algoritmos da seguinte forma P1. escolha uma estimativa inicial para o vetor das variveis de deciso x0 = [x1 x2 ... xn]T , P2. calcule a direo de busca sk , P3. minimize, seguindo a direo sk, a FO, isto calcule xk+1 = xk + xk , onde xk = sk, P4. verifique se a tolerncia foi atingida, se no volte ao passo P2. Os vrios mtodos de programao no-linear (NLP - nonlinear programming) diferem uns dos outros principalmente na maneira como obtem a direo de busca sk . Alguns NLP utilizam as derivadas para definir a direo de busca (mtodos indiretos) ou apenas a FO (mtodos diretos). Os mtodos que utilizam derivadas analticas em geral usam menos tempo de computao, porm requerem maior tempo do engenheiro para a anlise do problema. Tambm importante lembramos que a natureza da FO influencia na escolha e no desempenho do algoritmo de otimizao. A seguir, na seo 4.1 apresentaremos os MI's mais utilizados em problemas de OMSR da engenharia qumica, enquanto na seo 4.2 estudaremos os MD's.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

93

5.1.

Mtodos Indiretos (MI) para OMSR

Os mtodos indiretos utilizam as derivadas para encontra o ponto timo x* . A direo de pesquisa s na minimizao denomindada direo descendente pois como

f x

( ) < f (x )
k +1 k

Equao 5-A o produto dos vetores Tf(x) e s sempre negativo, ou seja

T f ( x ).s < 0
Equao 5-B Para provar esta afirmao examine os vetores Tf(xk) e sk na figura 5-a. O ngulo entre eles , assim

T f x .s = T f x . s . cos
k k k k

( )

( )

Equao 5-C

Figura 5-A: Identificao da regio das possveis direes de busca Se = 90o como na figura 5-a, ento a direo de busca (ao longo de sk) no ir diminuir o valor da FO. Se 0o < < 90o ento haver um aumento da FO, portanto para atingir o objetivo, ou seja, minimizar f(x), 180o > > 90o e cos < 0 , consequentemente Tf(xk).sk < 0 . Existem basicamente 3 classes de MI's para resolver problemas de OMSR: MI1. Mtodos de 1a ordem: gradiente, gradiente conjugado MI2. Mtodos de 2a ordem: Newton, Levengerg-Marquardt
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

94 MI3. Mtodos da secante ou mtodos quasi-Newton: Broyden, Powell, Davidson-Fletcher-Powell (DFP), Broyden-Fletcher-Goldfarb-Shano (BFGS), Davidson

5.1.1.

Mtodo do Gradiente ou Mtodo do Gradiente Descendente

Este mtodo utiliza apenas a derivada de 1a ordem para atender a FO. O gradiente um vetor no ponto x que indica (localmente) a direo na qual a funo f(x) mais cresce e ortogonal (perpendicular) tangente do contorno de f(x) no ponto x . Na maximizao utilizaremos diretamente o gradiente e o algoritmo denominado de "gradiente ascendente", enquanto que na minimizao usaremos a negativa do gradiente, por isso o nome "gradiente descendente". Portanto no mtodo do gradiente descendente a direo de busca igual a negativa do gradiente

s = f x
k

( )
k

Equao 5-D Porm na maioria das vezes conveniente utilizar o gradiente apenas para indicar o sentido do passo, mas no a amplitude do mesmo e o ponto timo atualizado da seguinte forma

k +1

= x + x = x + k s = x k f x
k k k k k

( )
k

Equao 5-E onde xk = xk+1 - xk o vetor de xk a xk+1 sk direo de busca, a direo do gradiente descendente k escalar que determina o comprimento a ser percorrido na direo sk O mtodo utiliza a equao 5-e recursivamente at que a tolerncia seja atingida. No ponto mnimo o valor do gradiente deve ser igual a zero. Para definir o valor de k existem vrios mtodos, mas citaremos apenas dois deles: (a) k = = constante, neste caso o passo utilizado raramente o apropriado. (b) k = opt calculado por

opt

( ) = (s ) .H (x ).s
T f x .s
k k T k k

Equao 5-F O mtodo gradiente apresenta trs dificuldades: eficiente nas primeiras iteraes, quando o ponto encontra-se afastado do ponto timo, porm sua taxa de convergncia diminui drasticamente medida que se aproxima da soluo tima.
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

95 D1. Se os eixos das curvas de nvel da FO so paralelos aos eixos formados pelas variveis de deciso, por exemplo quando no existe interao entre as variveis de deciso [ f(x1,x2) = x12 + x22 ], a direo de busca apontar diretamente para o timo, figura 5-be figura 5-c. Porm quando esses eixos no so paralelos, a taxa de convergncia cai drasticamente, por exemplo quando existe interao entre as variveis de busca [ f(x1,x2) = x12 + x22 + x1.x2 ] , figura 5-d e figura 5-e. Podemos resumir esta dificuldade dizendo que este mtodo muito sensvel a forma das curvas de nvel. D2. O gradiente descendente determina um ponto estacionrio, no distinguindo se o mesmo um extremo ou ponto de sela. Se for um ponto de sela necessrio empregar um mtodo que no usa o gradiente para mover o ponto para fora dessa regio. A estacionaridade do ponto pode ser testada examinando a matriz Hessiana da FO, conforme descrito no captulo 2.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

96 D3.
x1 = -2:0.1:2; x2 = -2:0.1:2; [X1,X2] = meshgrid(x1,x2) ; fx1 = X1.^2 + X2.^2; mesh(x1,x2,fx1) v1 = [0.1,0.5,1,1.5,2,3,4,6]; c = contour(x1,x2,fx1,v1); clabel(c);
2 1.5
8 6 4 2 0 2 1 0 -1 -2 -2 -1 1 0 2

1 1 0.5 0 -0.5 -1 -1.5 -2 -2 6 4 -1.5 -1 -0.5 0 0.5 2 0.5

1.5

0.1

6 1 1.5 2

Figura 5-B: Grfico de fx1

Figura 5-C: Curvas de nvel de fx1

x1 = -2:0.1:2; x2 = -2:0.1:2; [X1,X2] = meshgrid(x1,x2) ; fx2 = X1.^2 + X2.^2 + X1.*X2; mesh(x1,x2,fx2)


20

v2 = [0.1,0.5,1,1.5,2,3,4,6]; c = contour(x1,x2,fx,v2); clabel(c);


2 1.5 4 4 6 2 1.5

15

1 0.5

0.1 0.5 4 6 3 1

10

0 -0.5

5 2 1 0 -1 -2 -2 -1 1 0 2

-1 -1.5 -2 -2

4 -1.5 -1 -0.5 0 0.5 1 1.5 2

Figura 5-D: Grfico de fx2

Figura 5-E: Curvas de nvel de fx2

5.1.2.

Mtodo do Gradiente Conjugado

Este mtodo, tambm de 1aordem, combina (linearmente) o gradiente da iterao atual com o da anterior definindo a nova direo de busca, da o nome gradiente conjugado. Tambm tem taxa de convergncia quadrtica e tem um desempenho superior ao mtodo do gradiente descendente sem aumentar significativamente o esforo computacional. A demonstrao desta ltima afirmao encontrada em Himmelblau e Edgar (1980), pgina 219. O algoritmo do mtodo do gradiente conjugado pode ser assim resumido: P1. Defina uma estimativa inicial xo P2. Calcule f(xo) e f(xo) , faa so = -f(xo)
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

97 P3. Compute x1 = xo + o.so . o o escalar que minimiza f(x) na direo so , ou seja obtido atravs de uma busca unidimensional. P4. Calcule f(x1) e f(x1) . A nova direo de busca uma combinao linear entre so e f(x1) :
s
1

[f (x )] [f (x )] = f (x ) + s [f (x )] [f (x )]
1 T 1 1 0 0 T 0

Equao 5-G Para a k-sima iterao:


s
k +1

= f x

( )+ s
k +1

[f (x )] [f (x )] [f (x )] [f (x )]
k +1 T k T k +1 k

Equao 5-H P5. Teste se a FO esta sendo minimizada, se no volte ao passo P4. P6. Termine o algoritmo quando ||sk|| for menor que a tolerncia desejada. Um problema com este mtodo que se a razo entre os produtos internos dos gradientes entre as iteraes k+1 e k for pequena recaimos no algoritmo do gradiente descendente.

5.1.3.

Mtodo de Newton

Este um mtodo indireto de 2a ordem. Vamos aproximar a FO por uma srie de Taylor truncada no 3o termo.

f ( x ) f x + f x
k

( ) [ ( )] x
k T

1 k T k k x .H x . x 2

( ) ( )( )

Equao 5-I O mnimo de f(x) na direo xk obtido derivando a equao 5-i em relao a x e igualando a zero
f x + H x . x = 0
k k k

( ) ( )( )
Equao 5-J

ou

x = x
k

k +1

x =H x
k

[ ( )] f (x )
k 1 k

Equao 5-K onde [H(xk)]-1 o inverso da matriz Hessiana. Observe que a equao 5-k define simultaneamente o sentido e a magnitude {-[H(xk)]-1f(xk)} do passo de atualizao (xk) das variveis de deciso (xk) . Se f(x) for realmente quadrtica ento o mnimo alcanada em uma iterao. Entretanto, em geral para uma FO no-linear so necessrios vrias
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

98 iteraes. Neste caso interessante alterar a equao 5-k modificando a amplitude do passo da seguinte maneira

x = x
k

k +1

x = k . H x
k

[ ( )] f (x ) = .s
k 1 k k

Equao 5-L onde k (amplitude do passo) pode ser calculado pela equao 5-f. No mtodo de Newton = 1 em cada passo. Note tambm que para avaliar xk no preciso inverter a matriz Hessiana, pois podemos reescrever equao 5-j em forma de sistema de equaes lineares
H x . x = f x
k k

( )( )

( )
k

Equao 5-M que tem soluo relativamente fcil, e que diminui arredondamenteo cometidos durante a inverso de matrizes. os erros de

O mtodo de Newton, quando converge, bastante rpido. Porm tem as seguintes desvantagens: D1. Encontra apenas o mnimo local. D2. Requer a inverso de uma matriz, ou pelo menos a soluo de um sistema linear a cada iterao. D3. Requer a avaliao analtica das derivadas de 1a e 2a ordem. D4. Pode convergir para um ponto de sela se H(x) no positiva definida. D5. Tem desempenho fraco quando a estimativa inicial ruim. A dificuldade D3 pode ser amenizada aproximando a derivada por uma frmula apropriada de diferenas finitas. Se H(x) for positiva-definida e se a FO pode ser aproximada por uma funo quadrtica, o mtodo de Newton tem a vantagem de ter uma taxa de convergncia quadrtica nas vizinhanas do ponto timo, ou seja, na regio onde o gradiente descendente ou conjugado tem um desempenho ruim. Porm em regies afastadas do mnimo o mtodo de newton tem uma taxa de convergncia pequena.

5.1.4.

Mtodo de Levenberg-Marquardt

Levenberg, Marquardt e outros pesquisadores sugeriram que a matriz Hessiana de f(x) , H(x) , seja modificada a cada iterao de forma a garantir ~ que a nova matriz Hessiana, H(s) , seja sempre positiva-definida e bemcondicionada. Isto efetuado adicionando a H(x) uma matriz diagonal ~ H (x ) = H (x ) + I Equao 5-N
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

99 onde uma constante positiva, suficientemente grande para garantir ~ que H(s) seja positiva-definida quando H(x) no . Tambm possvel usar

~ [H (x )] = [H (x )]
1

+ I

Equao 5-O onde uma constante com finalidades anlogas aos de . Para definir a magnitude de precisamos estimar qual o menor (mais negativo) autovalor de H(x) , 1 , e fazer com que > -min(1) . Note que se for suficientemente grande I pode subjugar a H(x) e neste caso o algoritmo se aproxima do gradiente descendente. O mtodo de Levenberg-Marquardt para minimizar uma funo pode ser implementado segundo o algoritmo abaixo: P1. Defina uma estimativa inicial xo e uma tolerncia . P2. Para k = 0 faa 0 = 103 . P3. Calcule f(xk) . P4. Verifique se a tolerncia foi atingida, se no continue. P5. Calcule s = H + k I
k

f x

( ).
k

P6. Compute xk+1 = xk + k.sk . k calculada pela equao 5-f. P7. Se f(xk+1) < f(xk) v ao passo P8, se no v ao passo P9. P8. k+1 = 0,25k , e k = k +1 . Volte ao passo P3. P9. k = 2k . Volte ao passo P3. Portanto o mtodo de Levenberg-Marquardt no incio se comporta como um gradiente descendente ( grande), mas a medida que se aproxima do ponto timo tende a se comportar como o mtodo de Newton ou o de quasi-Newton ( pequeno).

5.1.5.

Mtodo da Secante ou Quasi-Newton

Por analogia com o mtodo da secante para funes de uma varivel, os procedimentos descritos nesta seo minimizam f(x) utilizando apenas os valores de f(x) e de f(x) ; a Hessiana de f(x) aproximada por combinao desses valores, H ( x ) . Esses mtodos tambm so afetados pela estimativa inicial de xo.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

100 Os algoritmos dos mtodos quasi-Newton podem ser resumido da seguinte maneira: Passo 0 (zero) P1. Defina uma estimativa inicial xo e uma tolerncia . P2. Selecione a direo inicial de busca so . Usualmente so = -f(xo) .
0 P3. Calcule H H x , freqentemente H = I 0

( )

se H x 0

( )

no for positiva-

definida Passo k P1. Calcule o escalar k , por exemplo pela equao 5-f, ou faa = 1 . P2. Calcule xk+1 que minimiza f(x) : x P3. Calcule f(xk+1) e f(xk+1) . P4. Calcule xk = xk+1 - xk e gk = f(xk+1) - f(xk) .
1 1 1
k +1 k k k = x + k H s .

k k k +1 k k +1 k P5. Calcule H = H + H ou H = H + H escolhendo uma das equaes entre equao 5-p e equao 5-t.

P6. Calcule a nova direo de busca por

k +1

=H

[ ] f (x
k +1 1

k +1

atravs da inverso de matriz ou

k +1 k +1 k +1 H s = f x

( )

pela soluo do sistema linear,.

Passo k + 1 P1. Verifique se a tolerncia foi atingida P2. Se o critrio de convergncia foi satisfeito, pare. Se no, retorne ao passo k. Algumas equaes que realizam a aproximao da matrix Hessiana ou de sua inversa so mostradas a seguir: Broyden:
k k 1 k k k 1 k x H g x H g k 1 H = T 1 k k k k x H g g
T

Equao 5-P Davidson-Fletcher-Powell (DFP):


Ricardo Kalid - Otimizao de Processos kalid@ufba.br

101

( ) ( g )( g ) ( ) ( x )( x ) (H ) = ( x ) ( g ) ( g ) (H ) ( g )
k 1 k k T k

k H

k T

k T

k T

k 1

k H
k

1 T

Equao 5-Q ou sua equivalente

g k H k xk g k T + g k g k H k xk k H = k T k g x
k k k T k k k T

( ) ( )( ) g H x x g ( g ) [( g ) ( x )][( g ) ( x )]
k T k k T k

Equao 5-R Broyden-Fletcher-Goldfarb-Shanno (BFGS):


k 1 k k 1 k k T k k k x H g x + x x H g 1 k H = T k k g x

k x

( ) ( )( ) H g g x ( x ) [( g ) x ][( g ) x ]
k
1

k T

k T

k T

Equao 5-S ou sua equivalente

) = ( g () ( x) ) H(xx )(Hx ) xH
g g
k k T k T k k k k T k T k k

Equao 5-T Algumas desvantagens desses mtodo so D1. H ou


k

(H )

k 1

pode deixar de ser positiva-definida, neste caso devemos

utilizar um dos mtodos descritos na seo 5.1.4. D2. A correo H

( )
k

ou H

( )

k 1

pode tornar-se ilimitada devido aos erros

de arredondamento.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

102 D3. Se

x = k H
k

( ) f ( x )
k 1 k

por acaso tem a mesma direo da

iterao

anterior

ento

k +1

ou

(H )

k +1 1

torna-se

singular

ou

indeterminada.

5.2.

Mtodos Diretos (MD) para OMSR

Mtodos diretos no utilizam as derivadas para determinar a direo da busca. s vezes os MD's so mais efetivos que os MI's, porm esses ltimos tem uma taxa maior de convergncia. Os MD's apresentam a vantagem de serem fceis de entender e implementar. Os MD's mais utilizados em problemas de engenharia qumica so: MD1. Busca randmica. MD2. Grade de busca. MD3. Busca unidirecional. MD4. Mtodo simplex ou do poliedro flexvel.

5.2.1.

Busca Randmica

O algoritmo deste procedimento o seguinte P1. Fazer k = 0 P2. Randmicamente escolher um vetor xk P3. Avaliar f(xk) P4. Verificar se a tolerncia foi atingida, se no retornar ao passo P2. Alguns mtodos escolhem a direo de busca randomicamente e minimizam nessa direo a funo f(x). Obviamente, a soluo tima s pode ser obtida com 100% de probabilidade quando k , mas se a FO for muito suave esse mtodo razovel. Uma alternativa interessante utilizar esse procedimento como ponto de partida para outro algoritmo: realiza-se uma srie de buscas randmicas escolhendo a que representar menor valor para f(x) . Tambm podemos utilizar a busca randmica para certificar que o ponto timo apenas um extremo local. Neste caso damos uma perturbada na soluo tima e se aps vrias perturbaes verificamos que voltamos ao mesmo ponto timo, temos uma boa probabilidade de termos encontrado o mximo global duma certa regio. Por exemplo, na Figura 1-2, do captulo 1, a FO tem inmeros vales e montes prximo ao ponto timo. Se, ao encontrar um ponto candidato ao timo, o perturbarmos por pequenos incrementos randmicos e, ao continuar com a busca, verificamos que fomos para outro ponto estacionrio temos a certeza que existem multiplicidade de pontos estacionrios e a procura do ponto timo deve ser melhor investigada.
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

103

5.2.2.

Grade de Busca

Esse algoritmo simplesmente faz o mapeamento da FO ao longo de pontos afastados um do outro segundo uma geometria previamente determinada, figura 5-f. Escolhemos o ponto que minimiza (maximiza) f(x) , neste ponto repete-se a grade e assim sucessivamente, at encontrar o ponto timo.

Figura 5-F: Vrias tipos de grades de busca O mtodo da grade de busca requer um elevado esforo computacional para problemas multivarivel.

5.2.3.

Busca Unidimensional

O algoritmo desse mtodo pode ser assim resumido: P1. Fazer k = 0 e estimar um vetor x0 . P2. Escolher uma componente j do vetor xk . P3. Utilizando um mtodo de otimizao unidimensional, encontrar o ponto timo na direo j . P4. Escolher outra direo j e retornar ao passo P3 at ter percorrido todas n direes possveis. P5. Verificar se a tolerncia foi atingida, se no retornar ao passo P2. Esse mtodo s mais eficiente quanto mais quadrtica for a FO, isto , quanto mais alinhado estiverem os eixos das curvas de nvel com os eixos das variveis de deciso.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

104
x1 = -2:0.1:2; x2 = -2:0.1:2; [X1,X2] = meshgrid(x1,x2) ; fx1 = X1.^2 + 10*X2.^2; v1 = [0.1,0.5,1,1.5,2,3,4,6]; c = contour(x1,x2,fx1,v1); clabel(c);
2 1.5 1 0.5 4 0 -0.5 -1 -1.5 -2 -2
-2 -2 4 -1.5 -1 -0.5 0 0.5 1 1.5 2

x1 = -2:0.1:2; x2 = -2:0.1:2; [X1,X2] = meshgrid(x1,x2) ; fx2 = X1.^2 + X2.^2 + X1.*X2; v2 = [0.1,0.5,1,1.5,2,3,4,6]; c = contour(x1,x2,fx,v2); clabel(c);
2 1.5 1 4 4 6 2 1.5

6 3 0.5 1 6
-1 -1.5 0.5 0 0.5 4 6 1 3 0.1

0.1 1.52

-0.5

-1.5

-1

-0.5

0.5

1.5

Figura 5-G: Curvas de nvel com os eixos alinhados

Figura 5-H: Curvas de nvel com os eixos desalinhados

5.2.4.

Mtodo Simplex ou do Poliedro Flexvel

Esse mtodo utiliza uma figura geomtrica regular (um simplex) para selecionar o ponto, um dos vrtices do simplex, que minimiza f(x) . Em duas dimenses o simplex um tringulo, em trs dimenses, um tetraedro, e assim sucessivamente. Para entender o mtodo vamos assumir uma funo de duas variveis e que o tringulo seja equiltero. Na primeira iterao para minimizar f(x) , f(x) avaliada em trs pontos, os vrtices de um tringulo, figura 5-i(a). A direo de busca orientada a partir do ponto de maior valor de f(x) passando pelo centride do simplex, assim uma vez determinada a direo e como o tringulo equiltero est determinado um novo ponto, figura 5-i(a). A FO avaliada neste novo ponto e uma nova direo de busca determinada. O procedimento repetido, sempre rejeitando um vrtice, figura 5-i(b). Tambm devem ser desconsiderados vrtices j visitados. Quando nenhum novo vrtice encontrado devemos diminuir o tamanho da aresta do tringulo e continuar com a busca do ponto timo at atingr o critrio de parada. Nelder e Mead (1965) descrevem uma verso do mtodo mais eficiente e mais complexa, que permite estabelecer figuras geomtricas que expandem e contrarem suas arestas continuamente durante a busca do ponto timo

Nelder, J. A., e R. Mead, "A Simplex Method for Function Minimization", The Computer Journal, 7: 308 (1965) Ricardo Kalid - Otimizao de Processos kalid@ufba.br

105 (poliedro flexvel). Detalhes deste mtodo e um cdigo computacional so encontrados em Himmelblau (1970)@ e (1972)#

Figura 5-I: Representao do mtodo Simplex

5.3.

Avaliao dos MD's e MI's para Problemas de OMSR

Os MD's foram os primeiros mtodos propostos para resolver problemas de OMSR e so utilizados na indstria qumica devido ao fato de serem simples de entender e implementar, entretanto so menos eficientes e robustos que os modernos MI's. Porm para problemas com duas variveis de deciso os MD's so freqentemente satisfatrios. Os MI's, por outro lado, necessitam de conhecer as derivadas da FO. Se utilizarmos as derivadas analticas temos menor esforo computacional ao custo de um maior esforo cerebral. Se utilizarmos as derivadas aproximadas por diferenas finitas estamos mais sujeitos a erros de truncamento. Na tabela 5-a vemos a comparao entre MIs e MDs. Tabela 5-A: Comparao entre MI's e MD's Mtodos numricos de otimizao Mtodo Indireto (MI) Utilizam f(x) e f (x) a cada iterao Menor nmero de iteraes Maior tempo por iterao Mtodo Direto (MD) Utilizam f(x) a cada iterao Maior nmero de iteraes Menor tempo por iterao

Fornecem apenas uma soluo aproximada do ponto timo

Himmelblau, D. M., Process Analysis by Statistical Methods, John Wiley & Sons, New York, 1970. # Himmelblau, D. M., Applied Nonlinear Programming, McGraw-Hill, New York, 1972. Ricardo Kalid - Otimizao de Processos kalid@ufba.br

106 Para que os mtodos estudados sejam eficientes necessrio que:

a funo seja unimodal, seja conhecida a regio de busca que contenha o extremo da funo, nos mtodos indiretos (MI) seja dada uma boa estimativa inicial.
E lembremos sempre que o julgamento do engenheiro essencial na aceitao ou no das solues encontradas pelos pacotes computacionais.

5.4.

Exerccios

E5.1. Nas funes apresentadas nos exerccios E2.8., E2.10.(c) e E2.10.(d) encontre os pontos estacionrios e classifique-os. E5.2. Utilizando as funes fminu('f',x) e fmins('f',x) do toolbox de otimizao do MATLAB resolva os exerccios E2.11 e E2.12. Compare as respostas obtidas e o desempenho dos mtodos numricos empregados. E5.3. Atravs da anlise dimensional, o problema de transferncia de calor pode ser expresso por: Nu = Re onde Nu Re = nmero de Nusselt = nmero de Reynolds

e = constantes
Defina uma FO e Obtenha a melhor estimativa de e baseada nos seguintes dados experimentais: Tabela 5-B: Dados experimentais para o exerccio E5.3. Re 100 100 200 200 300 300 400 400 500 500 Nu 31 36 33 40 40 42 43 45 36 49

Ref.: Himmelblau, D. M., Process Analysis by Statistical Methods, John Wiley & Sons, New York, 1970. E5.4. Ajuste a equao de estado de Berthelot (para 1 mol):

P=

RgT a V b TV 2

para o SO2 a partir dos seguintes dados: Tabela 5-C: Dados para o exerccio E5.4. V (cm3/g) P (atm) massa de gs (g) T (C)

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

107 67,810 50,882 45,280 72,946 49,603 23,331 80,170 45,664 25,284 15,285 84,581 42,675 23,480 14,735 23,913 18,241 7,2937 4,6577 20,685 10,595 5,8481 5,651 7,338 8,118 5,767 8,237 15,710 5,699 9,676 16,345 24,401 5,812 11,120 19,017 27,921 20,314 25,695 51,022 63,730 26,617 47,498 74,190 0,2948 50

0,2948

75

0,2948

100

0,2948

125

1,9533

150

1,9533

200

Ref.: Himmelblau, D. M., Process Analysis by Statistical Methods, John Wiley & Sons, New York, 1970.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

108

6. Ajuste de Modelos Matemticos


Neste captulo estudaremos o ajuste de modelos matemticos lineares com uma varivel independente (seo 6.1), com vrias variveis independentes (seo 6.2) e o ajuste de modelos matemticos no-lineares (seo 6.3) a dados experimentais. Veremos tambm algumas observaes e "dicas" (seo 6.4) que podem acelerar a convergncia dos mtodos numricos utilizados no ajuste de modelos matemticos. Por fim, mas no por ltimo, resolveremos alguns exerccios (seo 6.5) que ajudaro a fixar os conceitos discutidos neste captulo. Como j dissemos anteriormente, o tratamento rigoroso e correto de ajuste de modelos emprega conceitos e procedimentos estatsticos, porm neste curso faremos um estudo mais "pragmtico" e superficial deste problema. Abordaremos o ajuste de modelos do ponto de vista de um problema de otimizao. Entretanto, alguns conceitos estatsticos sero necessrios e citados/definidos nos momentos oportunos. Devemos ter claro o significado de varivel determinstica e de varivel estocstica: Varivel determinstica - assume um nico valor com probabilidade de 100% de ocorrer; Varivel estocstica - pode assumir um valor com uma certa probabilidade (menor que 100% de ocorrer). Simplificadamente, podemos definir que uma varivel estocstica tem uma parte determinstica e uma parte randmica ou aleatria, que denominamos desvio padro, ou seja Varivel estocstica = parte (varivel) determinstica desvio padro AS VARIVEIS ESTOCSTICAS SERO REPRESENTADAS EM LETRAS MAISCULAS, com a exceo do desvio padro que ser representado pela letra grega sigma ( ), enquanto que as determinsticas em letras minsculas. Na figura 6-a observamos algumas representaes esquemticas de modelos matemticos. O diagrama de blocos letra (c) o adequado formulao matemtica de uma varivel estocstica adotada neste curso:
Y (t ) = f ( x(t )) + (t ) = y (t ) + (t )

Equao 6-A

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

109 x(t) Modelo Determinstic o (a) y(t) x(t) Modelo Estocstico (b) (t) Y(t) y(t) X(t) Y(t) Modelo Modelo Determinstic Determinstic o o (d) (c) Figura 6-A: Diagramas de blocos de modelo determinstico (a) e estocsticos (b,c,d) x(t) So sinnimos de varivel estocstica: varivel aleatria e/ou varivel randmica ("randon or stochastic variable"). A bibliografia recomendada para este captulo : Himmelblau, David M. Process Analysis by Statistical Methods. John Wiley & Sons, Inc. 1970 Y(t)

6.1.

Ajuste de Modelos Lineares nos Parmetros Com Uma Varivel Independente

Vamos assumir que apenas a varivel dependente (VDep) estocstica e que a varivel independente (VI) determinstica, isto , VDep est associado um certo desvio padro, enquanto que o valor assumido pela VI conhecido e sem erros (desvios) de medio ou de qualquer outra natureza. Neste texto vamos nos referir a modelos lineares apenas nos parmetros, sendo que a varivel independente pode ou no ser linear, por exemplo: a) Modelo linear nos parmetros e na VI:

Y (t ) = b0 + b1 .x(t )
Equao 6-B b) Modelo linear nos parmetros e no-linear na VI:
Y (t ) = b0 + b1 . x(t )

Equao 6-C c) Modelo no-linear nos parmetros e na VI:


Y (t ) = exp(b0 .b1 ). x(t ) + b0

Equao 6-D
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

110 Neste captulo estudaremos modelos conforme a equao 6-b ou a equao 6-c. Para reconhecer se um modelo linear em relao a um dado parmetro basta derivar parcialmente o modelo em relao ao parmetro, se o resultado no depender do parmetro ento o modelo linear em relao ao mesmo.

6.1.1.

Escolha da Forma do Modelo Linear

Na maioria das vezes a relao entre as VI's e VDep's no-linear, nesses casos, para aplicar a regresso linear, devemos estabelecer uma relao linear entre essas variveis, aplicando transformaes s mesmas. Alguns exemplos de transformaes podem ser observadas na tabela 6-a. Tabela 6-A: Transformaes para forma linear de funes de uma varivel Equao na Forma No-Linear Coordenadas na Forma Linear Eixo X x Eixo Y Equao na Forma Linear

1 = b0 + b1 .x y
y = b0 + b1 .

y# =

1 y

y # = b0 + b1 .x y = b0 + b1 .x #

1 x

x# =
x

1 x

x = b0 + b1 .x y y = b0 .x b1 + b2

y# =

x y

y # = b0 + b1 .x y # = log(b0 ) + b1 .x #

x # = log( x )

y # = log( y b2 )

Se uma relao linear entre a VI e a VDep estabelecida, atravs de uma transformao, os parmetros do modelo no-linear podem ser estimados por regresso linear. No entanto, o tratamento dos erros de medio da VDep torna-se mais complexo, pois a transformao linear no pode ser aplicada ao tratamento do erro. Por exemplo, seja a relao no-linear:

Y = y + = b0 .x b1 +
Equao 6-E Linearizando a equao 6-e, no obteremos o resultado abaixo:

log(Y ) = log(b0 ) + b1 . log( x ) +


Equao 6-F Outro fato relevante, quanto forma do modelo a ser ajustado, a independncia entre os parmetros do mesmo. Isto , quanto mais independente os parmetros entre si, mais fcil e confivel o ajuste. Para

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

111 modelos lineares de 1a ordem uma forma de estabelecer a independncia entre os parmetros escrever o modelo da seguinte maneira:
Y = b0 + b1 . x x

Equao 6-G onde x a mdia dos valores de x .

6.1.2.

Ajuste do Modelo Linear Univarivel

A obteno das melhores estimativas dos parmetros de um modelo um problema de otimizao. Portanto necessrio estabelecer: a) a funo objetivo (FO) a ser alcanada; b) a(s) funo(es) de restrio(es) (FR), estas no sero consideradas neste captulo; c) o critrio de parada, quando for utilizado um mtodo numrico. A funo objetivo (FO) pode ser, por exemplo, a minimizao da soma dos quadrados dos erros, entre valor medido e valor calculado pelo modelo da VI; ou a maximizao da funo de verossimilhana; ou minimizao da soma do mdulo dos erros. A estimativa atravs da funo de mxima verossimilhana requer o conhecimento de conceitos estatsticos que fogem ao escopo deste curso e, por isso, no ser aqui estudada. A utilizao da funo mdulo sempre leva a um tratamento matemtico complexo e no necessariamente mais adequado. Portanto o uso dos mnimos quadrados conveniente aos nossos propsitos. Alm disso conduz a problemas de otimizao com soluo analtica. Seja a FO a seguir:

f = min

= Yi i . pi
2

i =1

[(

Equao 6-H onde

i = b0 + b1 . xi x
Equao 6-I n - nmero total de experimentos realizados

Melhores estimativas, pois nunca obteremos o valor real do parmetro, apenas uma estimativa tima, segundo um certo critrio, do mesmo. Ricardo Kalid - Otimizao de Processos kalid@ufba.br

112

i - valor calculado da VDep para um certo xi


pi - nmero de medidas replicadas para um certo xi
Y i - valor da mdia dos experimentos replicados para um certo xi

- valor mdio da varivel independente


2 n f = min = min Yi b0 b1 . xi x . pi b0 ,b1 b0 ,b1 i =1

Substituindo a equao 6-i na equao 6-h, obtemos

[(

))

Equao 6-J Como queremos minimizar em relao aos parmetros devemos derivar a funo em relao aos mesmos e igualar a zero:

= i =1 b0

Yi b0 b1 . xi x . pi
2

[(

))

b0

= 2 Yi b0 b1 . xi x . pi = 0
i =1

{[

)] }

Equao 6-K

= i =1 b1

Yi b0 b1 . xi x . pi
2

[(

))

b1

= 2 Yi b0 b1 . xi x . xi x . pi = 0
i =1

{[

)](

) }

Equao 6-L Abrindo essas equaes, obtemos

[Y . p ] = b . [ p ] + b . [(x
n n n i i =1 i 0 i =1 i 1 i =1

x . pi

) ]
)
2

Equao 6-M

[Y .(x
n i i =1

x . pi = b0 . xi x . pi + b1 . xi x . pi
i =1 i =1

) ]

[(

) ]

[(
n

Equao 6-N mas

[(x
n i =1

x . p i = [xi . p i ] x. [ p i ] = [xi . p i ]
i =1 i =1 i =1

) ]

[x . p ]
i =1 n i i

[p ]
i =1 i

. [ p i ] = 0
i =1

Equao 6-O

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

113 ento, resolvendo para b0 e b1 , obtemos:

b0 =

[Y
n i =1 n i =1

. pi
i

[p ]

=Y

Equao 6-P

b1 =

[Y .(x
n i i =1 n

x . pi

) ]

[(x
i =1

x . pi

Equao 6-Q A equao 6-p e a equao 6-q do as estimativas dos parmetros b0 e b1 .

6.2.

Ajuste de Modelos Lineares de Vrias Variveis

Nesta seo estamos interessados no mesmo problema da seo anterior, apenas a complexidade matemtica aumenta, pois agora existem vrias variveis independentes. Novamente a funo objetivo a minimizao da soma dos quadrados dos erros:

f =

min b0 ,b1,bq
n i =1

= Yi i . pi = ei 2 . pi
2

[(

] [ ]
n i =1

Equao 6-R onde

i = b0 + b1 . xi ,1 x1 + b2 . xi , 2 x 2 + + bq . xi ,q x q
Equao 6-S n pi - nmero total de experimentos realizados

i - valor calculado da VDep para um certo ponto (xi,1, xi,2, ..., xi,q)
- nmero de medidas replicadas para um certo ponto (xi,1, xi,2, ..., xi,q)
Y i - valor da mdia dos experimentos replicados para um certo ponto (xi,1, xi,2, ..., xi,q) x k - valor mdio da varivel independente xk

xi,k - varivel independente, onde o ndice i indica a linha da matriz x , ou seja o ndice do conjunto de dados (1 < i < n); o ndice k indica a coluna
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

114 da matriz x , ou seja o ndice da varivel independente (sendo que para k = 0, xi,0 = 1) ou dos coeficientes (0 < k < q). Como queremos minimizar em relao aos parmetros devemos derivar a funo em relao aos mesmos e igualar a zero:
n = 2 Yi b0 b1 . xi1 x 1 b2 . xi 2 x 2 bq . xiq x q . p i = 0 b0 i =1

{[

)] }

Equao 6-T
n = 2 Yi b0 b1 . xi1 x 1 b2 . xi 2 x 2 bq . xiq x q . xi1 x 1 . pi = 0 b1 i =1

{[

)](

) }

Equao 6-U
n = 2 Yi b0 b1 . xi1 x1 b2 . xi 2 x 2 bq . xiq x q . xiq x q . pi = 0 bq i =1

{[

)](

) }

Equao 6-V Reescrevendo essas equaes de forma apropriada:

b0 =

[Y
n i =1 n i =1

. pi
i

[p ]

=Y

Equao 6-W pois

[(x
n i =1

ik

x k . pi = 0

) ]

Equao 6-X
n n b1 xi1 x1 xi1 x1 . pi + b2 xi 2 x 2 xi1 x1 . pi + i =1 i =1 n n + bq xiq x q xi1 x1 . pi = Y i xi1 x1 pi i =1 i =1

[(

)(

) ]

[(

)(

) ]

[(

)(

) ]

[ (

) ]

Equao 6-Y

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

115
n n b1 xi1 x1 xi 2 x 2 . pi + b2 xi 2 x 2 xi 2 x 2 . pi + i =1 i =1 n n + bq xiq x q xi 2 x 2 . pi = Y i xi 2 x 2 pi i =1 i =1

[(

)(

) ] )(

[(

)(

) ]

[(

) ]

[ (

) ]

Equao 6-Z
n n b1 xi1 x1 xiq x q . pi + b2 xi 2 x 2 xiq x q . pi + i =1 i =1 n n + bq xiq x q xiq x q . pi = Y i xiq x q pi i =1 i =1

[(

)(

) ] )(

[(

)(

) ]

[(

) ]

[ (

) ]

Equao 6-AA

A equao 6-y e a equao 6-aa constituem um sistema linear de equaes. Definindo os seguintes vetores e matrizes:
1 Y 1 b0 1 Y 2 , b = b1 , x= Y= bq ( q +1)1 Y n n1 1 p1 0 p= 0

(x (x (x

11 21

x1

) (x x ) (x
1

12 22

x2 x2 x2

) ) )
12 22

(x (x
x2 x2 x2

n1

x1

) (x
11 21

n2

0
p2

Y 1 1 0 0 , e = Y 2 1 p n n n Y n 1

(x (x (x

x1

) (x x ) (x
1

( ) ) )

xq 2q x q x nq x q n( q +1)
1q

) ) )

(x (x (

n1

x1

) (x

n2

x q b0 b 2q x q 1 x nq x q bq
1q

) ) )

Equao 6-BB obtemos

= x.b , e = Y , = [ei2 . pi ] = eT . p.e


n

= (Y ) . p.(Y ) = (Y x.b )T . p.(Y x.b )


T

i =1

Equao 6-CC Derivando em relao ao vetor b e igualando a zero:

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

116

b T (Y x.b )T 0 e . p.e eT T = = 2 p.e = 2 p.e = 2.x . p.(Y x.b ) = 0 = b b b b bq

( )

Equao 6-DD Resolvendo a equao 6-dd em relao ao vetor b :


x . p.Y = x . p.x.b b = x . p.x
T T T

) (x . p.Y )
1 T

Equao 6-EE A matriz p pode ser interpretada como uma ponderao da preciso e/ou importncia das medies experimentais da VDep. Desta forma, se conhecermos as varincias das medidas experimentais da VDep (i2) podemos escrever:

1 0 0 2 1 1 0 0 p= 2 2 1 0 0 2 n Equao 6-FF

6.3.

Ajuste de Modelos Matemticos No-Lineares

Nas sees anteriores deste captulo, aprendemos como ajustar modelos lineares nos parmetros a dados experimentais. No entanto, tal procedimento nem sempre possvel ou leva a resultados adequados. Por exemplo, no Exerccio E6.4, para aplicar a regresso linear tivemos que "forar a barra" e a resposta obtida foi inadequada. Nesses casos temos que executar uma regresso no-linear. Por regresso no-linear entende-se um problema de otimizao cuja funo objetivo a minimizao dos resduos (soma dos quadrados dos erros) entre os valores medidos e os calculados da VDep. O modelos ajustado da seguinte forma

i = i (xi1 , xi 2 , , x iq ,b1 ,b2 , ,bm )


Equao 6-GG

onde q o nmero de variveis independentes e m o nmero de parmetros do modelo.


Ricardo Kalid - Otimizao de Processos kalid@ufba.br

117 Em notao matricial a equao 6-hh seria

= ( x,b )
Equao 6-HH onde
x11 x 21 x= x n1 x12 x 22 xn2 x1q b1 b x2q , b= 2 x nq bm

Equao 6-II com n > m , isto , o nmero de conjuntos de dados experimentais (n) deve ser maior que o nmero de parmetros a ajustar (m). Cada valor observado da VD, Yi , associado a um conjunto de x's , denominado xi = [ xi1, xi2, ..., xiq ] , e esta relacionado com um valor esperado da VD , i , ou seja

Yi = i + ei , i = 1,2,,n
Equao 6-JJ onde ei representa a soma dos erros de medio e da forma do modelo. A equao de regresso (modelo a ser ajustado) o seguinte

Y = x1 , x2 , , xq , b1 , b2 , , bm + e
Equao 6-KK A funo objetivo que almejamos
f = min b

= [Yi i ( x 1 , b )]2 . pi
i =1

Equao 6-LL A soluo analtica deste problema conduz a um sistema de equaes algbricas no-lineares. Um problema com grau de dificuldade igual ou maior ao problema de otimizao original. Por isso a abordagem numrica do problema de otimizao a mais adequada. Podemos utilizar mtodos de otimizao diretos ou indiretos, conforme estudado no captulo 5. Em qualquer dos casos, um ou mais critrios de parada devem ser estabelecidos, veja a seo 3.1.1.

6.3.1. Ajuste de Modelos por Mtodos Diretos - Mtodo do Poliedro Flexvel


Podemos usar qualquer mtodo direto (que no utiliza derivadas) para resolver o problema proposto pela equao 6-ll. Para ilustrar utilizaremos o
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

118 mtodo do poliedro flexvel ou simplex. No MATLAB a funo que invoca esse algoritmo fmins. Para verificar o seu procedimento de chamada digite help fmins na linha de comando e consulte o parte manual do TOOLBOX DE OTIMIZAO DO MATLAB includa no final desta apostila.

6.3.2.

Ajuste de Modelos por Mtodos Indiretos

Se o modelo a ser ajustado for no-linear podemos expandi-lo em uma srie de Taylor, truncando a aproximao no segundo termo. Este procedimento leva ao mtodo denominado de Gauss-Siedel, equivalente ao mtodo de Newton (ou quasi-Newton). Desta forma obtemos um modelo recursivo linear, que resolvido conforme procedimento anlogo ao visto na seo 6.2. Uma outra alternativa a linearizao da funo objetivo. Neste caso camos em algoritmos por ns j estudados: gradiente descendente ou gradiente conjugado. A tabela 6-b compara os mtodos indiretos para ajuste de modelos matemticos a dados experimentais. Tabela 6-B: Mtodos Indiretos para Ajuste de Modelos Taxa de Convergncia Frmula de Mtodo Linearizao Recorrncia longe da perto da soluo soluo anloga Gauss-Seidel do modelo lenta alta equao 6-ee Gradiente anloga da funo (descendente ou alta lenta Equao 5-E objetivo conjugado) ou 5-H combina a inicia conforme o linearizao do mtodo do gradiente e anloga Marquardt modelo com a depois se comporta Equao 5-N da funo como o de Gaussobjetivo Seidel

6.4.

Observaes e "Macetes"

Nesta seo descreveremos um procedimento geral, mas no infalvel, para ajuste de modelos matemticos a resultados experimentais. Veremos, tambm, alguns "macetes" que podem nos auxiliar e reduzir problemas de ordem numrica, tais como mal-condicionamento ou quase singularidades de matrizes. Como vimos o problema da estimativa de parmetros um caso particular de um problema de otimizao. Semelhante estimativa de parmetros so os problemas de: a) estimativa de estado;
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

119 b) c) d) simultnea estimativa de parmetros e de estado; reconciliao de dados; simultnea reconciliao e estimativa de parmetros.

Podemos utilizar qualquer algoritmo numrico para resolver os problemas de estimativa de parmetros. Particularmente, no TOOLBOX DE OTIMIZAO DO MATLAB esto disponveis os seguintes algoritmos: 1) Mtodo Quasi-Newton: Broyden-Fletcher-Golfarb-Shanno (BFGS). Comando do MATLAB fminu, com foptions(6) = 0 2) Mtodo Quasi-Newton: Davidon-Fletcher-Powell (DFP). Comando do MATLAB fminu, com foptions(6) = 1 3) Mtodo Gradiente Descendente. Comando do MATLAB fminu, com foptions(6) = 2 4) Mtodo Poliedro flexvel (Simplex) Comando do MATLAB fmins, com foptions(5) = 1 5) Mtodo dos Mnimos Quadrados No-Linear: Levenberg-Marquardt. Comando do MATLAB leastsq, com foptions(5) = 0 6) Mtodo dos Mnimos Quadrados No-Linear: Gauss-Newton. Comando do MATLAB leastsq, com foptions(5) = 1 7) Mtodo do Mnimo Mximo. Comando do MATLAB minimax, com foptions default

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

120

6.4.1.

Procedimento Geral para Ajuste de Modelos

Via de regra os passos a serem seguidos no ajuste de modelos podem ser assim resumidos: P1. Eliminao dos "outliers". Ou seja, retirada das informaes discrepantes. Isto pode ser feito atravs da anlise de grficos e/ou por intermdio de algoritmos. P2. Escolha da forma do modelo. importante eliminar ou minimizar a interao entre as variveis . Por exemplo, conforme procedimento anlogo ao descrito na seo escolha da forma do modelo linear. Para a escolha entre modelos cinticos concorrentes o livro Chemical Reactor Analysis and Design. 2a edio, 1990 de Kenneth B. BISCHOFF, e Gilbert F. FROMENT, tem um procedimento muito til e eficiente. Na escolha do modelo, sempre que possvel parta da anlise dos princpios fsicoqumicos dos fenmenos envolvidos. P3. MAPEAMENTO DA FUNO OBJETIVO: estimativa inicial dos parmetros do modelo. Um procedimento eficiente, quando possvel, o ajuste linear dos parmetros dos modelos. Se for possvel faa inicialmente uma regresso linear, mesmo que tenha que linearizar o modelo a ser ajustado, pois este ajuste geralmente conduz a boas estimativas iniciais para a regresso no-linear. Outra possibilidade a escolha de certo nmero de conjuntos de dados de forma que o sistema de equaes tenha graus de liberdade zero. Resolvendo este sistema temos uma estimativa inicial dos parmetros do modelo no-linear. P4. MAPEAMENTO DA FUNO OBJETIVO: estudo do problema em torno da estimativa inicial dos parmetros do modelo. Varie os parmetros do modelo em torno da estimativa inicial e verifique o comportamento da funo objetivo. Avalie os valores mximos e mnimos que os parmetros do modelo podem assumir. Calcule as derivadas parciais da funo objetivo em torno da estimativa inicial. P5. Normalizao dos parmetros do modelo e/ou normalizao da FO. Efetue transformaes de forma que os parmetros e/ou as parcelas da FO estejam na mesma ordem de grandeza . P6. Ajuste dos parmetros do mtodo numrico. Tendo uma boa estimativa inicial dos parmetros, ajuste os parmetros dos mtodos numricos de forma a minimizar o tempo necessrio ao ajuste e/ou a aumentar a preciso dos resultados obtidos. P7. Ajuste no-linear dos parmetros do modelo.

Himmelblau, D. M., Process Analysis by Statistical Methods. John Wiley & Sons, New York, 1970. Pg's 77, 78, 135 e 136 Idem pg 194. Idem pg's 148, 149, 193 e 194. Ricardo Kalid - Otimizao de Processos kalid@ufba.br

121 P8. Estude a sensibilidade da FO. Verifique como se comporta a FO frente a variaes nas VDep's e nos parmetros do modelo. Varie os parmetros do modelo em torno da soluo tima obtida e verifique o comportamento da funo objetivo. Calcule as derivadas parciais da funo objetivo em torno do ponto timo. P9. Defina o intervalo de confiana e/ou a regio conjunta de confiana dos parmetros. Embora fuja ao escopo deste curso, a anlise da varincia dos parmetros deve sempre ser realizada . P10.Realize simulaes com os parmetros ajustados, interpretando os resultados. No Apndice I esto reproduzidas as pginas citadas no rodap.

6.5.

Exerccios

E6.1. Determine qual a forma linear que melhor se ajusta aos dados experimentais da tabela abaixo. Dados de um experimento x 1 2 3 4 5 6 7 Y 62.1 87.2 109. 5 127. 3 134. 7 136. 2 134. 9

Idem pg 147 e 148 Idem pg's 154 a 164, 197 a 200 Ricardo Kalid - Otimizao de Processos kalid@ufba.br

122 E6.2. Utilizando a equao 6-b e a equao 6-g demonstre que esta ltima conduz a parmetros mutuamente independentes. E6.3. Os seguintes dados de equilbrio de SO3 em hexano so disponveis. Determine um modelo linear adequado a esse experimento. Dados experimentais do equilbrio do SO3 em hexano x Y

Press Frao Molar o do Hexano (psia) 200 400 600 800 1000 1200 1400 1600 0.848 0.573 0.401 0.288 0.209 0.153 0.111 0.078

Obs.: no diretrio de trabalho existe o arquivo E6_3.dat com os dados da tabela acima.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

123 E6.4. Ajuste, atravs de uma regresso linear e de uma no-linear, a equao de estado de Berthelot (para 1 mol):

P=

RgT a V b TV 2

para o SO2 a partir dos seguintes dados: V (cm3/g) 67,810 50,882 45,280 72,946 49,603 23,331 80,170 45,664 25,284 15,285 84,581 42,675 23,480 14,735 23,913 18,241 7,2937 4,6577 20,685 10,595 5,8481 P (ata) 5,651 7,338 8,118 5,767 8,237 15,710 5,699 9,676 16,345 24,401 5,812 11,120 19,017 27,921 20,314 25,695 51,022 63,730 26,617 47,498 74,190 massa de gs (g) 0,2948 0,2948 0,2948 0,2948 0,2948 0,2948 0,2948 0,2948 0,2948 0,2948 0,2948 0,2948 0,2948 0,2948 1,9533 1,9533 1,9533 1,9533 1,9533 1,9533 1,9533 T (C) 50 50 50 75 75 75 100 100 100 100 125 125 125 125 150 150 150 150 200 200 200

Ref.: Himmelblau, D. M., Process Analysis by Statistical Methods, John Wiley & Sons, New York, 1970. Interprete os resultados obtidos comparando-os com a soluo encontradas por vocs no exerccio E5.4. Obs.: no diretrio de trabalho existe o arquivo E6_4.dat com os dados da tabela acima.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

124 E6.5. xido de nitrognio absorvido numa soluo reacional para produzir um certo composto. Os dados dos experimentos esto a seguir. Aplicando o roteiro descrito na seo 6.4.1, estime os coeficientes do modelo b1, b2 e b3.

y = b1 .exp(b2 . x ). x b3
Dados do experimento x Y xido de Concentrao Nitrognio do Produto Absorvido (g/l) (g/l) 0.09 0.32 0.69 1.51 2.29 3.06 3.39 3.63 3.77 15.1 57.3 103.3 174.6 191.5 193.2 178.7 172.3 167.5

Obs.: no diretrio de trabalho existe o arquivo E6_5.dat com os dados da tabela acima. Utilize o mtodo do poliedro flexvel.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

125 E6.6. Ajuste a equao de Antoine

B T ondep a presso de vapor em milmetros de mercrio,T a temperatura em Kelvin, eAeBso constantes a serem determinadas. log10 p = A
Presso do vapor para H2SO4 (95 % peso) em H2O para diferentes temperaturas Presso de Vapor,p(mm Hg) 0.00150 0.00235 0.00370 0.00580 0.00877 0.01330 0.01960 0.02880 0.04150 0.06060 0.08790 0.12300 0.17200 0.23700 0.32100 0.43700 0.59000 0.78800 1.0700 1.4200 1.8700 2.4000 3.1100 4.0200 5.1300 6.4700 8.39 10.30 12.90 15.90 20.20 24.80 30.70 36.70 45.30 55.00 66.90 79.80 95.50 115.00 137.00 164.00 193.00 229.00 268.00 314.00 363.00 430.00 500.00 580.00 682.00 790.00 Temperatura Absoluta (K) 308.16 313.16 318.16 323.16 328.16 333.16 338.16 343.16 348.16 353.16 358.16 363.16 368.16 373.16 378.16 383.16 388.16 393.16 398.16 403.16 408.16 413.16 418.16 423.16 428.16 433.019 438.16 443.16 448.16 453.16 458.16 463.16 468.16 473.16 478.16 483.16 488.16 493.16 498.16 503.16 508.16 513.16 518.16 523.16 528.16 533.16 538.16 543.16 548.16 553.16 558.16 563.16

Obs.: no diretrio de trabalho existe o arquivo E6_6.dat com os dados da tabela acima.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

126

7. Programao Linear (PL)


Neste captulo estudaremos o mtodo de otimizao denominado programao linear (linear programming - LP). Esse algoritmo o mais robusto e eficiente para resolver problemas que tenham a FO linear e suas FR's dadas por equaes ou inequaes lineares nos parmetros e nas variveis (problema de programao linear - PPL). A forma padro do PPL a seguinte:
min ( x, c ) x

( x, c ) = [ci xi ]
i =1

sujeitoa xi 0 e e

, i = 1,2, ,q
j

[a x ] = b
q i =1 q ji i

, j = 1,2, ,m , j = m + 1,2, , p

[a x ] b
i =1 ji i

Equao 7-A ou em notao matricial:


min ( x , c) x

( x , c) = c T x
sujeito a xi 0 e A1 x = b 1 e A2 x b 2 , i = 1, 2, , q

Equao 7-B Para entender como funciona o algoritmo de PL vejamos o exemplo do exerccio E3.3. A aplicao dos procedimento aprendidos na seo 1.7 a esse problema nos leva a seguinte formulao: Funo objetivo (FO): maximizar o lucro lucro = faturamento - custo matria-prima - custo processamento seja x1 = bbl/dia consumido de petrleo tipo 1 x2 = bbl/dia consumido de petrleo tipo 2 x3 = bbl/dia produzido de gasolina x4 = bbl/dia produzido de querosene
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

127 x5 = bbl/dia produzido de leo combustvel x6 = bbl/dia produzido de resduo ento, em dlares por dia, podemos escrever: faturamento = 36.x3 + 24.x4 + 21.x5 + 10.x6 custo matria-prima = 24.x1 + 15.x2 custo processamento = 0,5.x1 + 1,0.x2 As restries desse problema so (FR's): Quanto ao rendimento a cada tipo de produto: Gasolina: Querosene: 0,80.x1 + 0,44.x2 = x3 0,05.x1 + 0,10.x2 = x4

leo combustvel: 0,10.x1 + 0,36.x2 = x5 Resduo: 0,05.x1 + 0,10.x2 = x6

Quanto capacidade colocao da produo da planta no mercado: Gasolina: Querosene: x3 < 24.000; 0,80.x1 + 0,44.x2 < 24.000 x4 < 2.000; 0,05.x1 + 0,10.x2< 2.000

leo combustvel: x5 < 6.000; 0,10.x1 + 0,36.x2< 6.000 Quanto a natureza matemtica das variveis: por se tratar de vazes e/ou produes. xi > 0 ,i = 1, 2, ..., 6 Substituindo as relaes (restries de igualdade) e simplificando as expresses, obtemos: max ( x ) x ( x ) = 8,1x1 + 10,8 x 2

sujeitoa x i 0 , i = 1,2 e 0,80 x1 + 0,44 x 2 24.000 0,05 x1 + 0,10 x 2 2.000 0,10 x1 + 0,36 x 2 6.000
Equao 7-C

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

128 ou em notao matricial:

max ( x, c ) x

( x, c ) = c T x
sujeitoa xi 0 e A.x b x 8,1 onde x = 1 , c = 10,8 x2 0,80 0,44 24.000 0,05 0,10 , b = 2.000 A= 0,10 0,36 6.000
Equao 7-D Rescrevendo o problema na forma padro:

, i = 1,2

min ( x, c ) x

( x, c ) = c T x
sujeitoa xi 0 , i = 1,2 e A.x b
Equao 7-E As restries definem uma regio vivel, conforme pode ser observada na figura 7-a.

Figura 7-A: Regio vivel de um PPL Demonstra-se que o mximo de uma funo linear sempre ocorre nas restries (limites) da mesma. Assim, o mximo de nosso problema estar nas intersees das retas e/ou nas retas que definem a regio vivel.
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

129 Portanto, para encontrarmos o mnimo de um PPL basta pesquisar nas intersees das retas de restrio. Os algoritmos de PL utilizam desta propriedade para encontrar o ponto timo. importante lembrar que um PPL uma funo cncava e convexa, limitada por funes convexas, portanto a regio vivel convexa. Consequentemente existe apenas um nico ponto de mnimo (mximo), ou seja o mnimo (ou o mximo) global. Maiores discusses sobre funes cncavas/convexas e regio convexa podem ser vistas nas sees 2.11 e 2.12. Para resolver o problema supracitado utilizando o Toolbox de Otimizao do MATLAB, basta digitar na linha de comando do MATLAB as seguintes instrues: c=[ 8.1 ; 10.8 ] b = [ 24000 ; 2000 ; 6000 ] A = [ 0.80 , 0.44 ; 0.05 , 0.10 ; 0.10 , 0.36 ] x = lp(-c,A,b) O comando help lp informa como utilizar o comando lp ("linear programming"). O algoritmo Simplex e suas variaes o mtodo computacional mais adotado para resolver um PPL. Ele se baseia nas caractersticas inerentes de um PPL (FO cncava/convexa, regio convexa, etc.). Um estudo mais detalhado deste algoritmo foge ao escopo deste curso, pois precisaramos de conceitos matemticos no abordados anteriormente. Alm disso, tal estudo relevante apenas quando for necessrio implementar um novo algoritmo numrico, meta que extrapola os objetivos deste curso. Cuidado para no confundir o algoritmo Simplex para PL com o Poliedro Flexvel (que alguns autores tambm denominam de Simplex).

7.1.

Convertendo Problemas para a Forma Padro da PL

Algumas vezes a formulao do problema de otimizao conduz a expresses lineares. Porm, no atendem sintaxe rgida dos programas de computador, isto , o problema no esta escrito na forma padro adequada aos pacotes computacionais. A forma padro adotada neste curso e no "Toolbox" de Otimizao do MATLAB a representada pela equao 7-b. A depender do autor/pacote computacional esta forma padro sofre pequenas modificaes. Portanto certo cuidado necessrio ao escrever um PPL. As equivalncias entre formas alternativas e padro so as seguintes: 1. Forma alternativa envolve a maximizao de uma funo (max f). Soluo: define-se f* = -f e resolve-se o novo problema (min f*). 2. Forma alternativa contm restrio de desigualdade com sinal >: Soluo: multiplica-se essa restrio por-1 .
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

130 3. Forma alternativa na qual a varivel de deciso (xk ) no obedece, estritamente, axk > 0. Neste caso podemos escrever xk > uk , com uk R . Soluo: define-se uma nova varivel de deciso yk = xk - uk , assim yk > 0 . 4. Forma alternativa na qual a varivel de deciso (xk ) irrestrita em sinal. Soluo: define-se duas novas variveis de deciso xk+ e xk- , ambas positivas, de forma que xk = xk+ - xk ; aps resolvido o problema conhecemos xk+ e xk- , consequentemente podemos calcular xk . Obs.: para utilizar o "Toolbox" de Otimizao do MATLAB no necessrio empregar as transformaes sugeridas nos item 3 e 4. Apenas as apresentamos aqui porque a maioria dos pacotes de otimizao de PL utilizam a forma padro, conforme a equao 7-a.

7.2.

A Dualidade em Programao Linear.

Todo PPL tem uma forma dual, isto , podemos rescrever o problema de outra maneira porm matematicamente equivalente. A forma dual, apesar de no ser a natural ou forma primal (aquela que obtida na anlise do problema), tem algumas propriedades que podem facilitar a resoluo computacional. A demonstrao da equivalncia das formas primal e dual foge ao escopo deste curso. Um estudo completo das propriedades e demonstraes matemticas do problema primal-dual pode ser encontrado em Dantzig (1963). Dado um problema na forma primal:
min ( x, c ) x
T ( x, c ) = c 1 x1 + c T x 2 2

sujeitoa A11 .x1 + A12 .x 2 = b1 (q ) A 21 .x1 + A 22 .x 2 b 2 (m) x1 0 (r1 ) (r2 ) x 2 irrestrito

Equao 7-F Obs.: as letras entre parnteses representam o nmero de equaes ou variveis.

Dantzig, G. B., Linear Programming and Extensions, Princeton University Press, Princeton , New Jersey (1963). Ricardo Kalid - Otimizao de Processos kalid@ufba.br

131 A formulao dual ser:

min y, b y

( )
T T

T ( y , b ) = b1 y 1 + b T y 2 2

sujeitoa A11 . y 1 + A12 . y 2 = c1 (r1 ) A 21 . y 1 + A 22 . y 2 c 2 (r2 )


T T

y1 0

(q) ( m)

y 2 irrestrito

Equao 7-G ondey1ey2so as variveis duais, tambm denominadas de multiplicadores de Lagrange. Para cada varivel primal existe uma dual e vice versa. Portanto conhecendo as variveis duais obteremos as primais. Observe que os coeficientes da FO na forma primal se tornam os termos do lado direito das FR's na forma dual, enquanto que os termos do lado direito da forma primal se transformam nos coeficientes da FO na forma dual. Alm disso aplicando a transposta nas matrizes dos coeficientes das FR's da forma primal (Aij) , as mesmas se tornam as matrizes dos coeficientes das FR's da forma dual (AijT). Note, tambm, que o problema primal de minimizao se transforma numa maximizao na forma dual e que o sinal de desigualdade invertido.

7.3.

Anlise de Sensibilidade em PL

O PPL apenas estar completamente resolvido aps realizar a anlise de sensibilidade da soluo a mudanas nos coeficientes da FO e das FR's. Este procedimento necessrio pois tais coeficientes e constantes, geralmente, no so conhecidos com preciso ou s vezes possvel modificar seus valores. As principais razes das incertezas na formulao de um PPL so: 1. Estimativa de preos de matria-prima e/ou produto; 2. Estimativa de demanda; 3. Estimativa de capacidade produtiva da planta; etc. Outras vezes interessante realizar a anlise de sensibilidade pois, sendo algumas restries/variveis controlveis, podemos modific-las de forma a maximizar/minimizar o valor da FO. Por exemplo, a depender do problema temos condies de manipular 1. o capital disponvel; 2. a capacidade de processamento de uma unidade a ser construda; 3. o nvel de automatizao de uma planta; etc.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

132 A anlise de sensibilidade realizada modificando o valor das constantes para mais e/ou para menos e acompanhando sua influncia sobre o valor da FO e do ponto timo alcanado.

7.4.

Programao Linear Sucessiva (PLS)

Quando um problema de otimizao no linear, seja na FO, seja nas FR's, uma possibilidade para encontrar o ponto timo atravs da linearizao e aplicao seqencial de PL. Suponha que o vetor x# seja uma soluo vivel do problema no-linear. Linearizando, em torno de x# , a FO e as FR's que sejam no lineares obtemos:

( ) ( ) (x ) s.a. h ( x ) h (x ) + (x x ) h (x ) = 0 g ( x ) g (x ) + (x x ) g (x ) 0
min ( x ) x + x x
# # j j # T # # T # j # # T # j j j

Equao 7-H onde cada componente do vetor(x- x#) limitado inferior e superiormente para garantir que a soluo do PPL esteja prxima de da estimativa inicial x# . O algoritmo para o mtodo PLS o seguinte: 1. Defina os limites inferior e superior de validade da linearizao; 2. Defina uma estimativa inicial vivel do problema no-linear: xk ; 3. Linearize a FO e/ou as FR's em torno deste ponto. Encontre a soluo tima do PPL linearizado: xk+1 ; 4. Verifique se xk+1 uma soluo vivel do problema no-linear. Se sim faa xk = xk+1e retorne ao passo 3, at que o(s) critrio(s) de parada seja(m) atendido(s); se no diminua os limites inferior e superior de validade da linearizao e retorne ao passo 3. Os algoritmos de PLS tem algumas vantagens: a) so fceis de implementar; b) podem manipular problemas com um grande nmero de variveis e/ou restries; c) convergem rapidamente quando o ponto timo est numa interseo de restries; d) so aplicveis em problemas com um nvel "moderado" de no-linearidades. As desvantagens dos algoritmos PLS so: a) a PLS converge lentamente quando o ponto timo se localiza no interior da regio vivel; b) a PLS converge lentamente quando existe um nmero elevado de variveis no-lineares;
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

133 c) se a no-linearidade elevada, o passo de iterao deve ser pequeno, resultando em um grande esforo computacional.

7.5.

Exerccios

E7.1. Escreva na forma padro o seguinte PPL. Resolva utilizando o MATLAB.

max = 3x1 2 x2 + 4 x3 s.a. 2 x1 8 x2 + 9 x3 = 5 x1 + 5x3 8 1,6 x1 + 4,7 x2 + 8 x3 4 x1 0 x2 0

E7.2. Resolva, utilizando o comando do MATLAB lp , o exerccio E3.1 Qual o custo mnimo de armazenamento e quanto cada tanque deve conter.

E7.3. Faa uma anlise de sensibilidade no exerccio E3.3.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

134

8. Multiplicadores de Lagrange
Quando o problema de otimizao no-linear podemos aplicar o mtodo dos multiplicadores de Lagrange. Este mtodo localiza os pontos crticos, ou seja, identifica possveis pontos que podem ser mximo, mnimo ou ponto de sela. A definio de qual a natureza do ponto crtico dada pelo Hessiano neste ponto. Este mtodo converte um problema de otimizao com restries em um problema sem restrio, atravs da introduo de constantes denominadas multiplicadores de Lagrange. Para compreender este mtodo, considere a minimizao de uma funo denvariveis sujeita a uma nica restrio de igualdade:

s.a. h1 ( x1 , x 2 ,, x n ) = 0
Equao 8-A Defina uma nova funo, denominada de funo Lagrangeana ou simplesmente Lagrangeana(o), da seguinte maneira:
L( x,w) = ( x ) + w1 .h1 ( x )

min ( x1 , x 2 ,, x n )

Equao 8-B ondew1 denominado multiplicador de Lagrange, sendo irrestrito quanto ao sinal. No ponto crtico a FO original e a Lagrangeana tem que ser iguais, pois a restrio de igualdade deve ser obedecida, isto , se x* um ponto crtico, entow1 um multiplicador de Lagrange e :

x = L x , w = x + w1 .h1 x

( ) (

) ( )

( )

pois h1 x = 0

( )

Equao 8-C Logo o problema se resume a encontrar umw1que satisfaa o seguinte problema de otimizao sem restrio:

onde L( x1 , x 2 , , x n ,w1 ) = ( x1 , x 2 ,, x n ) + w1 .h1 ( x1 , x 2 , , x n )


Equao 8-D Como trata-se de um problema sem restries, a condio necessria para que um ponto seja crtico obtida derivando a FO em relao s suas variveis de deciso e igualando essas expresses a zero:

min L( x1 , x 2 ,, x n ,w1 )

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

135

L =0 x1 L =0 x 2 L =0 x n L = h( x ) = 0 w1
Equao 8-E Esse sistema de equaes algbricas tem n+1 equaes e n+1 incgnitas, portanto pode ser resolvido. Exemplo 8.1: Considere o seguinte problema de otimizao no-linear:

2 s.a.h( x ) = 25 x12 x 2 = 0

min ( x ) ( x ) = x1 .x 2

o Lagrangeano deste problema :

2 L( x ) = ( x ) + w1 h( x ) = x1 .x 2 + w1 . 25 x12 x 2

portanto as condies necessrias para um ponto ser crtico so:

L( x1 , x 2 , w1 ) = x 2 2.w1 .x1 = 0 x1 L( x1 , x 2 , w1 ) = x1 2.w1 .x 2 = 0 x 2 L( x1 , x 2 , w1 ) 2 = 25 x12 x 2 = 0 w1


resolvendo esse sistema de equaes algbricas no-lineares encontramos os seguintes pontos crticos: w1 x1 x2 -0,5 +3,54 -3,54 -3,54 +3,54

+0,5

+3,54 +3,54 -3,54 -3,54

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

136 para saber se o ponto de mnimo ou de mximo temos que calcular a Hessiana da Lagrangeana em relao ao vetorxno ponto crtico :

H L( x )

2 L( x, w ) 2 L( x, w ) x1x 2 2.w1 2 x1 = = 2 L( x ) = 2 2 L( x, w ) L( x, w ) 1 2 x x x2 2 1

1 2.w1

para os pontos crticos temos as seguintes possibilidades:


+ 1 1 0 p/ w1 = 0,5 ( x ) = (+ 3,54;3,54 )ou ( 3,54;+3,54 ) H L = autovalores = + 2 1 + 1 1 1 - 2 p/ w1 = +0,5 ( x ) = (+ 3,54;+3,54 )ou ( 3,54;3,54 ) H L = autovalores = 0 1 1

como os autovalores so no-negativos (ou no-positivos) a matriz Hessiana positiva semi-definida (negativa semi-definida) e esse ponto , possivelmente um mnimo (mximo); para comprovar se realmente um ponto de mnimo temos que avaliar a FO: para w1 = -0,5 (x) = -12,5 para w1 = +0,5 (x) = +12,5 comparando os valores da FO e a matriz Hessiana nos pontos crticos conclumos que: w1 -0,5 x1 x2

(x)

HL

Ponto

+3,54 -3,54 -12,5 -3,54 +3,54 -12,5

> 0 mnimo > 0 mnimo

+0,5 +3,54 +3,54 +12,5 < 0 mximo -3,54 -3,54 +12,5 < 0 mximo

O problema de otimizao na forma geral pode conter restries de igualdade e de inequaes. Neste ltimo caso temos que transformar as inequaes em equaes utilizando variveis de folga ("slack variable"). Assim o problema

min ( x ) s.a. h j ( x ) = 0 g j ( x) 0 j = 1, , m j = m + 1, , p

Equao 8-F

Na seo 2.11 e 2.13 estudamos a matriz Hessiana e o seu significado. Ricardo Kalid - Otimizao de Processos kalid@ufba.br

137 transformado, pela subtrao, na inequao, do quadrado da varivel de folga, j2, j = m+1, ..., p:

s.a.h j ( x ) = 0 j = 1,, m g j ( x ) 2 = 0 j = m + 1,, p j


Equao 8-G Agora podemos definir a Lagrangeana da seguinte forma

min ( x )

L( x, w) = ( x ) + w j .h j ( x ) +
j =1

] {w .[g (x ) ]}
p j = m +1 j j

2 j

Equao 8-H Novamente como trata-se de um problema sem restries, a condio necessria para que um ponto seja crtico obtida derivando a FO em relao s suas variveis de deciso e igualando essas expresses a zero:

L x , w, =0 x i L x , w, =0 w j

( ( (

i = 1, , n j = 1, , p

) )

L x , w, = 2w j . j = 0 j = m + 1, , p j
Equao 8-I Exemplo 8.2: Considere o seguinte problema de otimizao no-linear:

2 s.a. g ( x ) = 25 x12 x 2 0

min ( x ) ( x ) = x1 .x 2

o Lagrangeano deste problema :

2 L( x ) = ( x ) + w1 g ( x ) = x1 .x 2 + w1 . 25 x12 x 2 12

portanto as condies necessrias para um ponto ser crtico so:

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

138

L( x1 , x 2 , w1 , 1 ) = x 2 2.w1 .x1 = 0 x1 L( x1 , x 2 , w1 , 1 ) = x1 2.w1 .x 2 = 0 x 2 L( x1 , x 2 , w1 , 1 ) 2 = 25 x12 x 2 12 = 0 w1 L( x1 , x 2 , w1 , 1 ) = 2.w1 . 1 = 0 1


resolvendo esse sistema de equaes algbricas no-lineares encontramos os seguintes pontos crticos: (x) Ponto x2 w1 1 x1 0 -0,5 5 0 0 0 0 0 0 0 de sela +3,54 -3,54 -12,5 mnimo

-3,54 +3,54 -12,5 mnimo +3,54 +3,54 +12,5 mximo -3,54 -3,54 +12,5 mximo

+0,5

Nesta tabela tambm observamos o valor da funo a ser minimizada e a caracterstica do ponto crtico.

8.1.

Anlise de Sensibilidade por Multiplicadores de Lagrange

Os multiplicadores de Lagrange tem uma importante e especial interpretao em problemas de otimizao: eles fornecem a sensibilidade da FO em relao a mudanas nos termos constantes das FR's. Seja o problema de otimizao a seguir:

min ( x ) s.a.h( x ) = e (e sendo constante) ou seja s.a.h( x ) = h( x ) e


Equao 8-J Ento o Lagrangeano ser

L ( x ) + w h( x ) e = w = e e
Equao 8-K Aproximando a equao 8-k por diferenas finitas, obtemos:

]}

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

139

L = w ou L = w.e e
Equao 8-L Interpretando a equao 8-l podemos tirar as seguintes concluses: 1. A variao do Lagrangeano a uma mudana nos valores das restries diretamente proporcional ao multiplicador de Lagrange associado a essa restrio; 2. No ponto timo, a afirmao acima pode ser estendida FO, isto , o multiplicador de Lagrange informa quo sensvel a FO em relao a mudanas nas restries.

8.2.

Condies de Kuhn-Tucker - CKT

Nas sees anteriores vimos como utilizar os multiplicadores de Lagrange para solucionar problemas de otimizao. Kuhn e Tucker estabeleceram, baseados nos multiplicadores de Lagrange, condies necessrias e suficientes para problemas de programao (otimizao) no-lineares (PNL). Considere os seguinte problema de PNL ("nonlinear programming" - NLP):

s.a.h j ( x ) = 0 j = 1,, J g k ( x ) 0 k = 1,, K


Equao 8-M Assumindo que as funes , h e g so diferenciveis, as condies necessrias para que o ponto x* seja mnimo, ou as condies de KuhnTucker so:
x L( x, w, u ) = ( x ) w j .h j ( x ) u k .g k ( x ) = 0 h j (x ) = 0
j =1 k =1 J K

min ( x )

j = 1,2, , J k = 1,2, , K

u k .g k ( x ) = 0 k = 1,2, , K uk 0 k = 1,2, , K

g k (x ) = 0

Equao 8-N A demonstrao dessa condio est alm do escopo deste curso. O leitor interessado pode encontrar uma prova formal em Bazaraa, M. S. e Shetty (1979).

Bazaraa, M. S. e Shetty, C. M., Nonlinear Programming: Theory and Algoritms, John Wiley & Sons, New York, 1979. Ricardo Kalid - Otimizao de Processos kalid@ufba.br

140 Alm disso, se a FO convexa, as restries de igualdade forem lineares e as restries de inequaes forem cncavas; e se existir (x*, w*, u*) que satisfaa as CKT, ento x* o ponto timo (timo global). Esta a condio suficiente.

8.3.

Vantagens e Desvantagens dos Multiplicadores de Lagrange

Abaixo esto descritas as vantagens do mtodo dos multiplicadores de Lagrange: 1. Permite fazer fcil anlise de sensibilidade da FO s restries; 2. Serve de embasamento terico a outros mtodos de otimizao; 3. Permite estabelecer condies necessrias e suficientes de pontos timos. As desvantagens deste mtodo so as seguintes: 1. Nem sempre os multiplicadores de Lagrange existem; 2. O clculo dos multiplicadores pode ser muito complicado; 3. Ou recai num sistema de equaes algbricas, muitas vezes no-lineares, que pode ter difcil soluo; ou .ento o aumento do nmero de variveis independentes (variveis de deciso mais os multiplicadores de Lagrange) torna difcil a soluo do problema.

8.4.

Exerccios

E8.1. Utilizando os multiplicadores de Lagrange, maximize f = x12 + x22 + 4x1x2 sujeito a x1 + x2 = 8 . Se a restrio modificar para x1 + x2 = 8,01 , qual a mudana na Lagrangeana? E na FO?

E8.2. O custo de construo de uma coluna de destilao pode ser descrito como:

C = C p . A. N + Cs . H . A. N + C f + Cd + Cb + C L + C x
onde C - custo total, $ Cp - custo por p-quadrados de rea de um prato, $/ft2
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

141 A N - rea da seo transversal da coluna, ft2 - nmero de pratos

Nmin - nmero mnimo de pratos Cs - custo da estrutura, $/ft3 H - distncia entre os pratos, ft Cf - custo da bomba de alimentao, $ Cd - custo da bomba do destilado, $ Cb - custo da bomba do fundo, $ CL - custo da bomba do reciclo, $ Cx - outros custos fixos, $ O problema consiste em minimizar o custo total, levando em conta que as especificaes quanto a quantidade e qualidade de produto devem ser atendidas. Considere, tambm, que os custos das bombas so conhecidos e fixos, isto , Cf, Cd e Cb so constantes. O material de construo tambm j foi selecionado, portanto Cp, Cs e Cx j foram determinados. As variveis de processo so relacionadas por duas expresses empricas:

L 1 L = D 1 N min D min N A = K . ( L + D)
para simplificar assuma = = 1; ento

L 1 L = D 1 N min D min N A = K . ( L + D)

Para a coluna de destilao em questo os seguintes parmetros so conhecidos: Cp = 30 Cs = 10 H=2 Cf =4000 Cd = 3000 Cb = 2000 Cx = 8000 F = 1500 D = 1000 Nmin = 5 (L/D)min =1 K = 0,01 (h.ft2)/lb

O custo da bomba de refluxo relacionado com a vazo da corrente de refluxo e dada por:

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

142

C L = 5000 + 0,7. L
Pede-se: a) Determine as variveis de deciso (independentes) e as variveis dependentes; b) Utilizando os multiplicadores de Lagrange, encontre o ponto mnimo e o correspondente custo de construo da coluna. D (destilado) L F (alimentao (refluxo)

B (resduo)

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

143

9. Funo Penalidade
Um dos mtodos mais empregados em problemas de otimizao no-linear o da funo penalidade. Basicamente consiste numa aproximao sucessiva da soluo partindo de uma estimativa inicial x(0), que pode ou no ser um ponto vivel, e de um certo valor para o parmetro de penalizao R. medida que R diminui, isto , a penalizao por violar as restries diminui, as solues x(k) se aproximam do ponto timo x*. A idia deste mtodo transformar o problema com restrio:

min ( x ) s.a.h j ( x ) = 0 j = 1,, m

g j ( x ) 0 j = m + 1,, p
Equao 9-A

num problema irrestrito, utilizando uma funo penalidade que pondera a influncia da restrio na FO, isto , FO original acrescentados termos que dependem das restries e do parmetro de penalizao. No incio do algoritmo o problema tratado como irrestrito (R infinito) e gradualmente R diminui penalizando as violaes das restries. Assim a equao 9-a fica transformada em:

min P( x, R ) P( x, R ) = ( x ) + (R, h( x ), g ( x ))
Equao 9-B O termo penalizante pode assumir vrias formas, alguns das quais podem ser observadas na tabela 9-a. Vamos demonstrar o uso da funo penalidade atravs de um exemplo simples.
min ( x1 , x 2 )

Exemplo 9.1:

( x1 , x 2 ) = ( x1 4)2 + ( x 2 4 )2
s.a. h( x1 , x 2 ) = x1 + x 2 5 = 0

Utilizando uma penalidade quadrtica, escrevemos a funo penalidade:

P( x1 , x 2 , R ) = ( x1 4) + ( x 2 4) +
2 2

1 ( x1 + x 2 5)2 R

Agora temos um problema de otimizao sem restries, que pode ser resolvido utilizando o mtodo do poliedro flexvel. Para implementar o mtodo da funo penalidade temos que definir:
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

144 1. Razo de atualizao do parmetro de penalizao (RR), pois o mesmo deve ser inicializado com um valor elevado e gradualmente ir diminuindo; 2. Critrio de parada: (a) at quando o valor de R ir diminuir; (b) em relao a dois valores sucessivos das variveis de deciso; (c) em relao a dois valores sucessivos do valor da funo penalidade; (d) em relao a dois valores sucessivos do valor da funo objetivo. Neste exemplo adotaremos apenas o critrio de parada 2(a). Na tabela abaixo vemos o resultado das sucessivas iteraes at atingir o critrio de parada (R < 0,0001). Observe que o mtodo vai convergindo a cada iterao, pois: 1. O valor da funo de restrio vai diminuindo; 2. Os valores das variveis de deciso tendem ao valor exato; 3. O valor da funo penalidade P(x1, x2, R) vai se aproximando da FO (x1, x2) R x1 x2 P(x1, x2, R) 0,000000 0,008982 0,088235 0,750000 3,000000 4,285700 4,477600 4,497800 4,499800 4,500000

x1, x2)
0,00000000 0 0,00001803 1 0,00172920 0,12502000 0 1,99900000 0 4,08160000 0 4,45530000 0

h(x1, x2) 3,0000 2,9940 2,9412 2,5000 1,0001 0,1429 0,0149

4,0000 4,0000 1000 100 10 1 0,1 0,01 0,001 0,0001 Soluo Exata 3,9970 3,9970 3,9706 3,9706 3,7500 3,7500 3,0000 3,0000 2,5715 2,5714 2,5075 2,5074 2,5008 2,5007 2,5000 2,5001 2,5000 2,5000

4,49550000 0,00150 0 4,49960000 0,00015 0 4,50000000 0,00000 0

Outra observao pertinente que a seqncia de pontos no pertencem regio vivel, ou seja, os pontos (x1, x2)(k) so exteriores regio vivel. Quando a funo penalidade escrita de forma a gerar uma seqncia de pontos viveis dito que o algoritmo um mtodo de pontos interiores, quando
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

145 no pertencem denominado mtodo de pontos exteriores, quando gera pontos dentro e fora da regio vivel chamamos de mtodo de pontos mistos. No existe uma funo penalidade que seja adequada a todos os problemas, portanto para cada problema temos que descobrir a funo penalidade mais apropriada.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

146 Tabela 9-A: Tipos de funes penalidades P( x, R ) = ( x ) + (R, h( x ), g ( x )) Tipo de Restrio Denominao Penalidade Parablica Funo Penalidade Expresso
(R, h( x )) = 1 m 2 h j (x ) R j =1

Igualdade

Equao 9-C
(h( x )) = 10 20 . g j ( x )
jJ

Equao 9-D Inequaes Barreira Infinita onde J identifica o conjunto de restries violadas, isto , neste caso

g j (x ) < 0 j J
Penalidade Logartmica

Inequaes

( g ( x )) = R. ln g j ( x )
j = m +1

Equao 9-E

(R, g ( x )) = R
Inequaes Penalidade Inversa

1
j = m +1

[ g (x ) ]
p j

Equao 9-F Inequaes Operador Parnteses


(R, h( x ), g ( x )) =

(R, g ( x )) =

1 p g j (x ) R j = m +1 Equao 9-G
1
j = m +1

Equaes e Inequaes

1 m 2 h j (x ) +R R j =1

[ g (x ) ]
p j

Equao 9-H Equaes e Inequaes

(R, g ( x )) =

p 1 m 2 h j ( x ) R ln g j ( x ) R j =1 j = m +1 Equao 9-I m

Equaes e Inequaes

(R, g ( x )) = 10 20 h j ( x ) +10 20
j =1

j = m +1

g j (x )

Equao 9-J

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

147 onde
g j ( x ) se g j ( x ) 0 g j (x ) = 0 se g j ( x ) > 0

Obs.: o parmetro penalizante R deve ser inicializado com valores grandes (1020).

9.1.

Exerccios

E9.1. Utilizando o mtodo da funo penalidade resolva o seguinte problema.


min ( x1 , x 2 )

( x1 , x 2 ) = ( x1 4)2 + ( x 2 4 )2
s.a. g ( x1 , x 2 ) = 5 x1 x 2 0

Utilize uma funo penalidade parnteses. A seqncia de pontos pertencem ou no regio vivel, ou seja, so ponto interiores ou pontos exteriores regio vivel? Sugesto: utilize os arquivos EX9_1.M e EX9_1_FC.M como modelos.

E9.2. Utilizando o mtodo da funo penalidade resolva o seguinte problema.

min ( x1 , x 2 )

( x1 , x2 ) = x1 2 x2

s.a. g1 ( x1 , x 2 ) = x1 1 0

h1 ( x1 , x 2 ) = x1 + x 2 6 = 0

2 g 2 ( x1 , x 2 ) = 26 x12 x 2 0

Sugesto: utilize os arquivos EX9_1.M e EX9_1_FC.M como modelos.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

148

10. Programao Quadrtica - PQ


Um problema de programao quadrtica (PPQ) - "quadratic programming problem QPP" - um problema de otimizao que envolve uma FO quadrtica e FR's lineares:

min ( x ) x

(x ) = c T x +
s.a. A.x b
x0

1 T x Qx 2

Equao 10-A Podemos rearranjar a equao 10-a da seguinte maneira


min ( x ) x

(x ) = c T x +

1 T x Qx 2 s.a. g 1 ( x ) = A.x b 0 g 2 ( x ) = I .x 0

Equao 10-B Escrevendo a funo Lagrangeana da equao 10-b, obtemos

L( x, w, u ) = ( x ) + w g 1 ( x ) + u g 2 ( x )
T T

Equao 10-C e

xT L( x, w, u ) = c + Q.x A w u = 0
T

Equao 10-D onde w e u so multiplicadores de Lagrange. Definindo variveis fictcias no-negativas (y):A.x - b - y = 0 ; aplicando as condies de Kuhn-Tucker ao PPQ, obtemos:

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

149
xT L( x, w, u ) = c + Q.x A w u = 0
T

A.x b y = 0 w y=0 u x=0


T T

x0 y0 w0 u 0

Equao 10-E O conjunto de variveis (x*, y*, w*, u*) que satisfaz a equao 10-e a soluo do PPNL (equao 10-a). Demonstra-se que se (x*, y*, w*, u*) soluo da equao 10-a, ento o PPQ equivalente a:

min ( x ) x 1 ( x ) = c T x + bT y 2 T s.a. c + Q.x A w u = 0

A.x b y = 0 w y=0 u x=0


T T

x0 y0w0u0
Equao 10-F Esta forma equivalente do PPQ denominada problema linear complementar. Portanto o PPQ pode ser encarado como um PPL. Se apenas existirem equaes de restrio, isto , no existem inequaes, ento as CKT so as mesmas da equao 10-f, exceto que y = 0 . Se a matriz Q for ao menos positiva semi-definida, ento o problema dual pode ser formulado:
max ( z , w )

( z, w) = b T w

1 T z Qz 2 T s.a. Q z A w + c 0 w0 z irrestrito

Equao 10-G No Toolbox de Otimizao do MATLAB o problema da PQ pode ser resolvido chamando a rotina qp. Para maiores instrues digite help qp na linha de comando do MATLAB.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

150

10.1. Programao Quadrtica Sucessiva - PQS


Analogamente ao realizado na PLS, podemos aproximar a FO e as FR's por funes que transformem o PPNL original em um subproblema de PQ. Resolvemos este ltimo e a soluo encontrada serve como estimativa para a prxima aproximao. O algoritmo de uma PQS pode ser assim resumido: 1. Dado o PPNL:

min ( x ) s.a. h j ( x ) = 0 j = 1,2,, J


g k ( x ) = 0 k = 1,2,, K
Equao 10-H defina a estimativa inicial xo ; 2. Aproximar o PPNL por um PPQ:

[ ( )] (x x ) + 1 (x x ) (x )(x 2 s.a. h (x ) + [h (x )] (x x ) = 0 j = 1,2, , J g (x ) + [g (x )] (x x ) 0 k = 1,2, , K


min x
i j i T i +1 i i +1 i T 2 i i T i +1 i j i i T i +1 i k k

i +1

Equao 10-I ou, definindo o vetor direo de busca d = (xi+1 - xi) :

[ ( )] d + 1 d (x )d 2 s.a. h (x ) + [h (x )] d = 0 j = 1,2,, J g (x ) + [g (x )] d 0 k = 1,2,, K


min x
i j i T T 2 i i T j i i T k k

Equao 10-J 3. Resolva o PPQ dado pela equao 10-j; 4. Verifique se a tolerncia foi alcanada, se no volte ao passo 2. A forma de aproximao dada pela equao 10-j, embora correta, gera algoritmos instveis. Uma forma mais robusta utilizar a aproximao da funo Lagrangeana no lugar da FO. Desta forma o subproblema de PQ fica assim definido:

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

151

[ ( )] d + 1 d L(x )d 2 s.a. h (x ) + [h (x )] d = 0 j = 1,2,, J g (x ) + [g (x )] d 0 k = 1,2,, K


min L x
i j i T T 2 i i T j i i T k k

Equao 10-K onde


x L( x, w, u ) = x ( x ) + w x h( x ) u x g ( x )
T T T T

2 L( x, w, u ) = 2 ( x ) + w 2 h( x ) u 2 g ( x ) x x x x

Equao 10-L mas no ponto timo demonstra-se que w T x h( x ) = 0 e u x g ( x ) = 0 assim o


T

subproblema de PQ pode ser escrito como

min q d , x , w , u

) [ ( )] d + 1 d L(x , w , u )d 2 ~ s.a. h (d , x ) h (x ) + [h (x )] d = 0 j = 1,2,, J ~ g (d , x ) g (x ) + [g (x )] d 0 k = 1,2,, K


q d , x , w , u = x
i i i i i j j

2 x

Equao 10-M onde d = (xi+1 - xi) Utilizando a equao 10-m o algoritmo do PQS semelhante ao apresentado anteriormente, apenas temos que estimar inicialmente, alm do vetor xo , o vetor dos multiplicadores de Lagrange woe uo . Podemos melhorar a convergncia do mtodo PQS substituindo a Hessiana do Lagrangeano por uma matriz aproximao positiva definida, por exemplo por uma frmula BFGS ou de Broyden.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

152

10.2. Exerccios
E10.1. Utilizando o mtodo da programao quadrtica resolva o seguinte problema.
min ( x1 , x 2 )

( x1 , x 2 ) = ( x1 4 ) + ( x 2 4 )
2

s.a. g( x1 , x 2 ) = 5 x1 x 2 0

Compare os resultados obtidos com o Exemplo 9.1 e com o exerccio 9.1.

E10.2. Resolva o seguinte PPQ:

min ( x )
2 2 2 2 ( x ) = x12 + 2 x2 + 3x3 + 4 x4 + 5x5

s.a. 2 x1 + x2 4 x3 + x4 x5 = 0 5x1 2 x3 + x4 x5 = 0 x1 + 2 x2 + x3 6 4 x 3 + x 4 2 x5 0

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

153

11. Gradiente Reduzido Generalizado -GRG


Um dos mtodos mais poderosos de PNL o do Gradiente Reduzido Generalizado ("Generalized Reduced Gradient" - GRG). O PPNL a ser resolvido o seguinte

s.a. h j ( x ) = 0

min ( x )

x = [x1
T

x2

xn ]

j = 1,2, , m

Li x i U i i = 1,2, , n
Equao 11-A onde Li e Ui so os limites inferiores e superiores da varivel xi . No caso de inequaes, as transforme em equaes utilizando variveis fictcias:

h j ( x ) = g j ( x ) i2

i +

ou h j (x) = g j (x ) i i 0
Equao 11-B onde o sinal + aplicado nas inequaes de sinal<e o sinal - nas de sinal> . Suponha que existam n variveis de deciso e m restries (n>m). Imponha que as m restries podem ser explcitas, assim pode-se substituir na FO m variveis, consequentemente o nmero de incgnitas fica reduzido a (nm). Realizar este procedimento em equaes no lineares s vezes impossvel. Porm, se as equaes forem lineares ou linearizadas possvel ter uma soluo analtica para o problema, desde que ela exista. Para tornar o algoritmo geral, ou seja generalizado, empregado o gradiente das funes, pois, desta forma, qualquer que seja a expresso, sempre ser obtida uma relao linear entre as variveis. Para exemplificar considere o seguinte problema:

s.a. h( x 1 , x 2 ) = 0
Equao 11-C O diferencial total de cada funo :

min ( x 1 , x 2 )

d (x )
Equao 11-D

(x ) x1

dx1 +

(x ) x 2

dx 2

dh( x ) =

h ( x ) h ( x ) dx1 + dx 2 = 0 x1 x 2
Equao 11-E

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

154 O diferencial total da restrio feito nulo porque, no ponto timo, a igualdade h(x) = = constante = 0 deve ser sempre obedecida. No mtodo GRG essa caracterstica aplicada a toda iterao. Utilizando a equao 11-e pode-se eliminar uma varivel:

h ( x ) 1 x h ( x ) h ( x ) 2 dx1 = h( x ) dx 2 = x1 x 2 dx 2 x1
Equao 11-F O algoritmo GRG iterativo. A atualizao dos valores dex1obedece seguinte relao:

x1k = x1k 1 + dx1k 1


Equao 11-G Observe que na equao 11-gx1kdepende apenas de condies da iterao anterior. Substituindo a equao 11-f na equao 11-e, obtemos:
( x ) h( x ) 1 h( x ) ( x ) d ( x ) = dx 2 + x1 x1 x 2 x 2

Equao 11-H A expresso entre colchetes da equao 11-h denominada de gradiente reduzido. Neste caso um escalar, mas, no caso geral, um vetor de (n-m) elementos. Para facilitar a notao em sistemas com vrias variveis vamos subdividir (particionar) as variveis de deciso em dois grupos: 1. Variveis de deciso bsicas ou dependentes, xD : so as variveis que sero explicitadas nas FR's, no exemplo acima xD= x1 . 2. Variveis de deciso no-bsicas ou independentes, xI : so as variveis que permanecero na FO, no exemplo acima xI= x2 . assim a varivel de deciso x particionada da seguinte forma: x = [ xD | xI ] . Portanto, haver m variveis de deciso bsicas (dependentes), e o vetor xD ter dimenso (m x 1). Enquanto que existir (n-m) variveis de deciso nobsicas (independentes), e o vetor xi ter dimenso (n-m x 1).

11.1. Relao entre o GRG e os Multiplicadores de Lagrange


A relao entre o GRG e os multiplicadores de Lagrange pode ser vista a seguir. Seja a Lagrangeana

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

155

L ( x, w ) = ( x ) + w h ( x )
T

Equao 11-I logo

L( x, w ) ( x ) h( x ) = + w x x x
T

Equao 11-J Lembrando do particionamento de xk = [ xDk | xIk ] :


L( x D , x I , w) = ( x D , x I ) + w h( x D , x I )
T

Equao 11-K Particionando os vetores da equao 11-j:

h ( x I ) L ( x I , w ) ( x I ) = + x I (n m ) x 1 x I (n m ) x 1 x I
Equao 11-L e, demonstra-se que

w m x1
(n m ) x m

h ( x D ) L ( x D , w ) ( x D ) = + x D m x1 x D m x1 x D
Equao 11-M Da equao 11-m obtm-se

w m x1 = 0
mxm

h( x ) T ( x ) h( x ) 1 ( x ) w = = x D x D x D x D

Equao 11-N ou

( x ) h( x ) w = xD xD
T T

Equao 11-O A equao 11-o d a relao entre os multiplicadores de Lagrange e o mtodo GRG. Substituindo a equao 11-n na equao 11-l obtm-se a expresso do gradiente reduzido

L( x, w ) ( x ) h( x ) = gR = xI xI xI

h( x ) 1 ( x ) x D x D

Equao 11-P
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

156 portanto, o gR a derivada parcial do Lagrangeano em relao s variveis no-bsicas:

11.2. Algoritmo do Gradiente Reduzido Generalizado


Vamos desenvolver o algoritmo do GRG utilizando um exemplo para ilustrar as passagens, veja Exemplo 11.1: min f ( x) =min exp( x1 )(4.x1 + 2.x 2 +4.x1 x 2 +1)
2 2

s.a.

1,5 + x1 x 2 x1 x 2 <0

x1 x 2 > 10
x1 = 9 ,5474 x2 = + 1, 0474 f min = 0 , 0236

A soluo obtida pelo MATLAB

Na tabela 11-a descrevemos, na coluna da esquerda, um algoritmo do mtodo do gradiente reduzido, enquanto que na da direita, aplicamos esse algoritmo no exemplo proposto. Aps a tabela encontra-se a listagem do programa desenvolvido no MATLAB para o mtodo do gradiente reduzido.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

157 Tabela 11-A: Algoritmo GRG e aplicao APLICAO DO ALGORITMO DO GRADIENTE REDUZIDO 1a ETAPA: 1a ETAPA: Escrever o problema segundo a Funo objetivo: forma padro, i.e.: min f ( x) T 2 2 minimizar f ( x ) x = [ x1 x2 xn ] f ( x) =exp( x1 )(4.x1 + 2.x 2 + 4.x1 x 2 + 2 x 2 +1) sujeito a h j ( x ) = 0 j = 1,, m Restries: Se existirem inequaes, as mesmas devem ser transformadas em equaes utilizando variveis fictcias . 2a ETAPA: Escolha das variveis no-bsicas (independentes) e bsicas (dependentes). Definio de alguns parmetros do mtodo numrico. Escolha prioritariamente as variveis controladas, quando existirem, como variveis independentes x I . Erro! No possvel criar objetos a partir de cdigos de campo de edio. Definio da estimativa inicial de xv vivel. Para tanto dado um certo xi utilizamos o mtodo de Newton para encontrar o xv vivel.

h1 ( x ) =1,5 + x1 x 2 x1 x 2 + x 3 =0
2

h2 ( x ) =10 x1 x 2 + x 4 =0
2

Obs.: as variveis x3 e x4 so fictcias 2a ETAPA: Escolhemos, inicialmente, x1 e x2 como variveis dependentes, enquanto x3 e x4 so as variveis independentes. Portanto:

x D = [ x1 x I = [ x3

x4 ]

x2 ]

x 0 = [ 100 ; + 100 ] D x0 = I

0,0 ;

0,0 ]

0 = 1;
taxa diminuio de = 5 tolerncia para FO = 1e-8

tolerncia para FR's = 1e-3 Definio do valor inicial de (fator de amortecimento), da taxa de diminuio critrio de parada: diferena absoluta ou de , das tolerncias, do(s) critrio(s) relativa de dois valores sucessivos da de parada e do nmero mximo de FO iteraes. 3a ETAPA: 3a ETAPA: Clculo do gradiente reduzido.
f k = k x I

(g )
R

k T

f k k x D
T

hk k x D
T

hk k x I

f ( x ) 2 2 =exp( x1 )(4 x1 + 2 x 2 + 4 x1 x 2 + 2 x 2 +1) x1 + exp( x1 )(8 x1 + 4 x 2 )

ou

(g ) = fx
k R

k k I

h k xI
k

1 k h k xD

f k xD
k

f ( x ) =exp( x1 )(4 x 2 + 4 x1 + 2) x 2

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

158 3a ETAPA: (continuao) Clculo do gradiente reduzido.


h1 ( x ) um vetor m x 1 h( x ) = hm ( x ) f ( x ) =0 x 3 f ( x ) =0 x 4 h1 ( x ) = x 2 1 x1 h1 ( x ) = x1 1 x 2 h2 ( x ) = x 2 x1 h2 ( x ) = x1 x 2

3a ETAPA: (continuao)

x1 xm x = x m+ 1 xn
T

um vetor n x 1

f ( x ) f ( x ) T = xD f = xD x1
um vetor1 x m

f ( x ) x m

f ( x ) f ( x ) T = xI f = x m +1 xI
T

f ( x ) x n

um vetor1 x (n-m)

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

159 3a ETAPA: (continuao) Clculo do gradiente reduzido. 3a ETAPA: (continuao)

h1 ( x ) h( x ) x1 = x D h m ( x ) x1
uma matrizm x m
h1 ( x ) h( x ) x m +1 = x I h m ( x ) x m +1

h m ( x ) x m

h1 ( x ) x m

h( x ) x 2 1 x1 1 portanto = e x D x 2 x1
h( x ) xD
1

x1 x x = 1 2 x2 x1 x 2

x1 1 x1 x 2 x 2 1 x1 x 2

h m ( x ) x n

h1 ( x ) x n

h1 ( x ) = 2 x3 x3 h1 ( x ) =0 x 4 h 2 ( x ) =0 x 3 h 2 ( x ) =2x 4 x 4 h( x ) 2 x 3 portanto = xI 0 0 2x4

uma matrizm x (n-m)

Ento g R
g1 = 2
g2 =2

( )
3

k T

g = 1 onde g 2
2 2 2

exp( x1 )(4 x1 + 2 x1 x2 + 4 x1 x2 + x1 +8 x1 4 x2 2 x2 ) x3 x1 x2
3
2 2 2

exp( x1 )(4 x1 + 4 x1 + 2 x1 x 2 6 x2 + 4 x1 x 2 3x1 + 1 2 x 2 4 x1 x 2 ) x 4 x1 x 2

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

160 4a ETAPA: Determinao da variao das independentes. Para a primeira iterao 4a ETAPA: direo da S foi necessrio variveis gradiente reduzido: um clculo do

0 =0,7367 x 10 -40 1 02 =0,7441 x 10 - 40

Porm o valor do fator de amortecimento da magnitude da variao das variveis modificou-se, k = g R veja os valores obtidos na 6a etapa. nas demais iteraes podemos a calcular a direo do incremento para Veja observao da 7 etapa sobre o as variveis independentes utilizando nmero de iteraes necessrias. a frmula do gradiente conjugado de Flercher-Reevs (algoritmo de Abadie):

= g Ri
k i

i =1,,n

ou

k +1 I

= g

k +1 R

k I

(g ) (g ) (g ) (g )
k +1 T R k T R k +1 R k R

5a ETAPA: Determinao variao dependentes.


k D

5a ETAPA: da das direo da Os valores obtidos para as variveis variveis dependentes para cada uma das 5 iteraes foram:

h k = xD

h k xI

k I

x1 x2 -100.00,100.00 -11.2280,-05.3257 -8.5371 , 1.0412 -9.5656,1.0465 -9.5664,1.0464

6a ETAPA:

6a ETAPA:

Determinao da magnitude da O valor do fator de amortecimento da variao das variveis magnitude da variao das variveis modificou-se consideravelmente, independentes e dependentes. assumindo os seguintes valores: k +1 k x I = x I + k kI 1; 0,1; 0,01; 0,001 e 0,0001 ~ k +1 = x k + k k xD D D portanto tivemos 5 iteraes at alcanar a convergncia. k+ 1 ~ onde xD um ponto de tentativa.

k determinado por uma busca


unidimensional

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

161 7a ETAPA: 7a ETAPA:

Determinao de uma regio vivel Na determinao da regio vivel a partir das variveis dependentes. utilizamos a funo do MATLAB fsolve. Usando o mtodo de Newton procurak +1 se um conjunto de ~ D que satisfaz x h(x) = 0.

k +1 D

k +1 ~ k +1 ~ k +1 h x I , x D h x k +1 , ~ k +1 =x D I xD xk ) D

) (

)
8a ETAPA: Nesta etapa utilizamos os testes descritos e desta maneira conseguimos alcanar a convergncia.

8a ETAPA: Verificao da convergncia. Vrias situaes podem ocorrer: (a) Se x k + 1 um ponto vivel e k +1 k +1 k k k +1 f ( x I , x D ) < f ( x I , x D ) adotar x e voltar para a 3a etapa.
k +1 (b) Se x um ponto vivel mas k +1 k +1 k k f ( x I , x D ) f ( x I , x D ) , reduzir para 1/10 do valor anterior, por exemplo, e retornar a 6a etapa. (c) Se na 6a etapa no foi encontrada

um x k + 1 vivel, reduzir para 1/10 do D valor anterior, por exemplo, e retornar a 6a etapa. (d) Se as situaes (b) e (c) ocorrerem aps 2 ou 3 passagens, i.e., o programa entrar em "loop" infinito, mudar as variveis dependentes e independentes.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

162 9a ETAPA: Critrio de parada do programa. Existem vrias possibilidades para o critrio de parada do programa, aqui adotaremos ou a diferena relativa ou a absoluta entre dois valores consecutivos da funo objetivo ser menor que um certo nmero, i.e.: 9a ETAPA: Para o problema em questo preferimos adotar o critrio de parada absoluto.

f x

( ) f (x ) tolerncia
k +1

f (x )

ou

f x

( ) f (x ) tolerncia
k +1

11.2.1.

Listagem do Programa GRG para o Exemplo 11.1

Aqui esto listados os seguintes programas: Programa grad_red. m Funo programa principal

grad_r_f.m clculo da funo objetivo grad_r_h. m grad_r_d. m clculo das restrio clculo reduzido do funes de

gradiente

Listagem do programa grad_red.m :


clear clear functions echo off clg clc % METODO DO GRADIENTE REDUZIDO
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

163 % Disciplina: Otimizao

% Verso 1.0 % Autor:prof. Ricardo de Arajo Kalid % Universidade Federal da Bahia % E-mail: RICKALID @ BRUFBA % Tel:(071) 247.5123 % Tel:(071) 336.1288 R.116 / R.141 % Fax:(071) 247.3410 disp(' ') disp(' ') disp(' Aguarde um momento, programa em execuo ...') disp(' ') disp(' ') disp('Para interromper pressione CTRL-C e aguarde.') disp(' ') %==========================================================\ % Exemplo 1. Pgina 1-6 do manual do toolbox de otimizao do MATLAB % Este mesmo exemplo utilizado no tutorial do MATLAB sobre otimizap % Aqui ns iremos resolv-lo pelo mtodo do Gradiente Reduzido.

% 1a. Etapa: Escrever o problema segundo a forma padro: x = [ xd ; xi ] % 2a. Etapa: Escolha das variveis dependentes e independentes global xi

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

164 % Incio do trecho que pode sofrer alterao pelo usurio % ==================================================== % Estimativa inicial (escolhida pelo usurio), variveis bsicas x(1) = - 100 ; x(2) = + 100 ; % Variveis fictcias, variveis no-bsicas x(3) = + 1.0 ; x(4) = + 1.0 ;

% Variveis dependentes ou variveis bsicas (escolhidas pelo usurio) xd = [ x(1) ; x(2) ] ; % Variveis independentes ou variveis no bsicas (escolhidas pelo usurio) xi = [ x(3) ; x(4) ] ; % Definio de parmetros do mtodo numrico lambda = 1 ; h_tol= 1e-3 ; f_tol= 1e-5 ; f_tipo_dif = 'absoluta' ; % f_tipo_dif = 'relativa' ; num_max_iteracao = 1000 ; taxa_diminuicao_lambda = 5 ; % Fim do trecho que pode sofrer alterao pelo usurio % ====================================================

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

165 gr = [ ] ; iteracao = 0 ; diminuicao_lambda = 'sim' ; continua_minimizacao = 'sim' ; % Determinao de uma soluo vivel inicial. xd = fsolve('grad_r_h' , xd) ; x = [ xd ; xi ] ; % Funo objetivo f_old = grad_r_f(x) ; % Restries h_old = grad_r_h(xd) ;

while continua_minimizacao == 'sim' , iteracao = iteracao + 1 x0= x; xd0 = xd ; xi0 = xi ; %3a Etapa: Clculo do Gradiente Reduzido %Derivadas [ dfdxd , dfdxi , dhdxd , dhdxi ]= grad_r_d(xd) ; idhdxd= inv(dhdxd) ; gr_old = gr ; gr = dfdxi - dhdxi' * idhdxd' * dfdxd ;

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

166 %4a. Etapa: Determinao da direo da variao % das variveis independentes if diminuicao_lambda == 'sim' , deltai = - gr ; else deltai = - gr + deltai*gr'*gr/(gr_old'*gr_old) ; end

%5a. Etapa: Determinao da direo da variao % das variveis dependentes deltad = - idhdxd * dhdxi * deltai ;

%6a. Etapa: Determinao da magnitude da variao % das variveis independentes e dependentes. xi = xi + lambda * deltai ; xd_old = xd + lambda * deltad ;

%7a. Etapa: Determinao de uma soluo vivel a partir % das variveis dependentes. xd = fsolve('grad_r_h' , xd_old) ;

%8a. Etapa: Verificao da convergncia. x= [ xd ; xi ]; f= grad_r_f(x); hr = grad_r_h(xd) ;

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

167 if sum( abs(hr) > h_tol ) == 0 if f_old > f %Alternativa (a): O pontoxd vivel e a funo % objetivo diminui de valor. lambda = 1 ; diminuicao_lambda = 'nao' ; continua_minimizacao = 'sim' ; else% if f_old <= f %Alternativa (b): O pontoxd vivel e a funo objetivo % NO diminui de valor. x= x0; xd = xd0 ; xi = xi0 ; diminuicao_lambda = 'sim' ; continua_minimizacao = 'sim' ; lambda = lambda / taxa_diminuicao_lambda ; end % if f_old else % if sum( abs(hr) < h_tol ) == 0 %Alternativa (c): O pontoxdno vivel. disp('') disp('No foi encontrado uma soluo vivel, ou seja, ') disp('no foi encontrado um conjunto bsico vivel.') disp('Deve-se aumentar a tolernciah_tol, ou') disp('tentar nova estimativa inicial paraxdexi.') continua_minimizacao = 'nao' ; end% if sum( abs(hr) > h_tol ) == 0
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

168

%Alternativa (d): O programa entrou em loop infinito. if iteracao >= num_max_iteracao ; disp('') disp('O programa no convergiu at o nmero mximo de iteraes estipulado. ') disp('Deve-se aumentar o nmero mximo de iteraes, ou') disp('mudar as bases, i.e., mudarxdexi, ou') disp('tentar nova estimativa inicial paraxdexi.') continua_minimizacao = 'nao' ; end

%9a. Etapa: Critrio de parada do programa. if f_tipo_dif == 'absoluta' , f_dif = abs( f-f_old ) ; else % if f_tipo_dif == 'absoluta' f_dif = abs( (f-f_old)/f_old ) ; end% if f_tipo_dif if f_dif <= f_tol , continua_minimizacao = 'nao' ; end% if f_dif <= f_tol f_old = f ; end % while continua_minimizacao

% Relatrio de sada if sum( abs(hr) > h_tol ) == 0


Ricardo Kalid - Otimizao de Processos kalid@ufba.br

169 if f_dif <= f_tol , disp(' ') disp('O programa convergiu!!') disp(' ') disp('Minimizao alcanada!!') else % if f_dif > f_tol disp(' ') disp('O programa NO convergiu!!') disp(' ') disp('ltimos resultados alcanados!!') end% if f_dif <= f_tol disp(' ') disp(' ') disp('Nmero de iteraes') iteracao disp('Valor da funo objetivo') f if f_tipo_dif == 'relativa' , disp('Diferena relativa entre duas iteraes para a funo objetivo') else disp('Diferena absoluta entre duas iteraes para a funo objetivo') end f_dif disp('Ponto mnimo') x end % if sum( abs(hr) < h_tol ) == 0 % Fim deste arquivo
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

170 Fim da listagem do programa grad_red.m

Listagem do programa grad_r_f.m :


function f = grad_r_f(x) % Funo objetivo do Exemplo 1. Pgina 1-6 do manual do % toolbox de otimizao do MATLAB. % Funo chamada pelo arquivo GRAD_RED.M f = exp(x(1)) * ( 4*x(1)^2 + 2*x(2)^2 + 4*x(1)*x(2) + 2*x(2) + 1) ; % Fim deste arquivo Fim da listagem do programa grad_r_f.m

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

171

Listagem do programa grad_r_h.m :


function h = grad_r_h(xd) global xi x = [ xd ; xi ] ; % Restries do Exemplo 1. Pgina 1-6 do manual do % toolbox de otimizao do MATLAB. % Funo chamada pelo arquivo GRAD_RED.M h(1) = 1.5 + x(1) * x(2) - x(1) - x(2) + x(3)^2 ; h(2) = - x(1) * x(2) - 10 + x(4)^2 ; % Fim deste arquivo Fim da listagem do programa grad_r_h.m

Listagem do programa grad_r_d.m:


function [ dfdxd , dfdxi , dhdxd , dhdxi ]= grad_r_d(xd) global xi x = [ xd ; xi ] ; % Funo objetivo do Exemplo 1. Pgina 1-6 do manual do % toolbox de otimizao do MATLAB. % Funo chamada pelo arquivo GRAD_RED.M f = grad_r_f(x) ; dfdxd_aux(1) = f +exp( x(1) ) * ( 8*x(1) + 4*x(2) ) ; dfdxd_aux(2) = exp( x(1) ) * ( 4*x(1) + 4*x(2) + 2 ) ; dfdxd = dfdxd_aux' ; dfdxi = [ 0 0]; dhdxd = [ ( x(2) - 1 ) , ( x(1) - 1 ) -x(2) ,-x(1)] ; dhdxi = [ +2*x(3) 0 0 +2*x(4) ] ; % Fim deste arquivo Fim da listagem do programa grad_r_h.m

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

172

11.3. Exerccios
E11.1. Utilizando o mtodo GRG resolva o seguinte problema.
min ( x1 , x 2 )

( x1 , x 2 ) = ( x1 4)2 + ( x 2 4 )2
s.a. g ( x1 , x 2 ) = 5 x1 x 2 0

Compare os resultados obtidos com o Exemplo 9.1, com o exerccio 9.1. e 10.1.

E11.2. Resolva o seguinte PPNL por GRG:


min ( x )
2 ( x ) = x12 x 2 + 4 x3 12 2 2 s.a.20 x 2 x 3 = 0

x1 + x3 7 = 0

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

173

12. Programao Inteira e Mista - PIM


Muitos problemas em operao, projeto, localizao e escalonamento de plantas envolvem variveis que no so contnuas e sim discretas, ou seja variveis que so inteiras. Variveis de deciso do tipo instala (1) ou no instala (0) um equipamento, ou nmero de unidades de bombas a serem implementadas (5, 6 ou 7), etc. Uma abordagem para resolver o Problema de Programao Inteira (PPI) tratar as variveis como contnuas e aproximar a soluo obtida aos nmeros inteiros mais prximos, porm este procedimento s vlido quando as variveis de deciso assumem valores grandes. A soluo obtida seguindo este mtodo subtima. Existem os seguintes problemas de otimizao envolvendo variveis inteiras: 1. Apenas esto presentes variveis discretas: problema de PI ("Integer Programming" - IP); 2. Apenas esto presentes variveis discretas binrias (0 ou 1): programao inteira binria PIB ("Binary Integer Programming" - BIP); 3. Algumas variveis de deciso so contnuas (y) outras so discretas.(x): programao inteira-mista PIM ("Mixed-Integer Programming" - MIP); 4. Algumas variveis de deciso so contnuas (y) outras so discretas.(x) com a FO e as FR's lineares: programao inteira-mista linear PIML ("MixedInteger Linear Programming" - MILP); Um dos algoritmos numricos mais empregados para PIM e denominada Branch and Bound Technique (algoritmo do ramifica e limita).

12.1. Branch and Bound Technique


O branch and bound pode ser aplicado problemas de o PI, bem como a PIM. O algoritmo deste mtodo pode assim ser resumido: 1. Obtenha uma soluo contnua (no-inteira) do problema; denomine este problema de C; 2. A soluo de C satisfaz todas as restries inteiras? Se sim, o problema esta resolvido. Se no , v ao passo 3; 3. Escolha uma das variveis no inteiras da soluo do problema C, digamos . Construa dois subproblemas a partir de C, atravs de uma ramificao (branch) em volta de adicionando as seguintes restries ao problema C: (a) subproblema C1 :x > menor inteiro maior que (b) subproblema C2 :x< maior inteiro menor que Escolha um dos subproblemas (depois retomaremos a outra ramificao), digamos C1; 4. A partir de C1 , encontre a soluo do problema contnuo e ramifique as solues no inteiras conforme apresentado no passo 3;
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

174 5. A partir de C2 , encontre a soluo do problema contnuo e ramifique as solues no inteiras conforme apresentado no passo 3; 6. Repita os passos 3, 4 e 5 para cada ramificao nova, sempre calculando o valor da FO e a nova soluo; continue a ramificar at que uma das trs seguintes condies ocorra: (a) voc encontra uma soluo na qual todas as restries inteiras so satisfeitas; (b) o valor da FO para um subproblema superior (se estamos minimizando) a todas os valores encontrados anteriormente e que satisfaam as restries inteiras; (c) no existe regio vivel. 7. Compare o valor alcanado pelas solues dos subproblemas, Ci , o menor (maior) valor de FO a soluo do problema. Para ilustrar o uso da tcnica branch and bound considere o seguinte exemplo:

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

175

max = 86 x1 + 4 x2 + 40 x3
Exemplo 12.1:

s.a. 774 x1 + 76 x2 + 42 x3 875 67 x1 + 27 x2 + 53x3 875

x1 , x2 , x3 = 0 ou 1 Aplicando a tcnica do branch and bound e utilizando o comando lp do MATLAB obtemos : PL contnuo s.a. 0 < x1 < 1 0 < x2 < 1 0 < x3 < 1 * Soluo: x = (1; 0,776; 1) Valor da FO: = 129,10
x2 = 1 PL contnuo s.a. 0 < x1 < 1 x2 = 1 0 < x3 < 1 * Soluo: x = (0,978; 1; 1) Valor da FO: = 128 11 x1 = 1 PL contnuo s.a. x1 = 1 x2 = 1 0 < x3 < 1 Soluo: x* = (1; 1; 0,595) Valor da FO: = 113,81 x2 = 0 PL contnuo s.a.: 0 < x1 < 1 x2 = 0 0 < x3 < 1 Soluo: x* = (1; 0; 1) Valor da FO: = 126,00 x1 = 0 PL contnuo s.a. x1 = 0 x2 = 1 0 < x3 < 1 Soluo: x* = (0; 1; 1) Valor da FO: = 44,00

x3 = 0 PL contnuo s.a. x1 = 1 x2 = 1 x3 = 0 Soluo: x* = (1; 1; 0) Valor da FO: = 90,0 Se uma varivel assume valores inteiros no-necessariamente binrios, podemos tratar esse problema como PIB, fazendo a seguinte transformao de varivel:

xi = (k j . yij )
n j =1

yi = 0 ou 1
Equao 12-A

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

176

12.2. Exerccios
E12.1. Utilizando o MATLAB reconstrua o Exemplo 13.1 E12.2. Duas unidades (U1 e U2), em uma planta a batelada, produzem as substncias 1 e 2, respectivamente, a partir de 3 reagentes (A, B e C) conforme pode ser visto na figura abaixo. A unidade U1 tem uma capacidade mxima de 8 ton/dia e a U2 tem capacidade mxima de 10 ton/dia. Para fazer 1 kg do produto 1 necessrio 0,4 kg de A e 0,6 kg de B; enquanto que para produzir 1 kg do produto 2 necessrio 0,3 kg de B e 0,7 kg de C. No mximo, s esto disponveis 6 ton/dia de B. Assuma que cada batelada produz 2 ton de cada produto. Pede-se: (a) Formule a FO; (b) Formule as FR's; (c) Escreva o problema como PIB; (d) Aplicando a tcnica do branch and bound encontre o ponto timo. x1 (kg/dia)

U1

U2 Fluxograma da planta a batelada

x2 (kg/dia)

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

177

13. Controle timo - CO


Uma outra classe de problemas que ocorre com certa freqncia na Engenharia Qumica o Problema de Controle timo (PCO) descrito pelas seguintes equaes:
min ( x(t ), u (t ), t ) u (t ) ( x(t ), u (t ), t ) = G (x(t f s.a.

)) + F (x(t ), u(t ), t )dt


t0

tf

dx = H ( x(t ), u (t ), t ) dt h( x(t ), u (t )) = 0 g ( x(t ), u (t )) 0

Equao 13-A A forma discreta do PCO a seguinte


min ( x(t ), u (t ), t ) u (t ) ( x(t ), u (t ), t ) = G ( x(K )) + F ( x(k ), u (k ), k ) s.a. x(k + 1) = H ( x(k ), u (k ), k ) h( x(k ), u (k )) = 0 g ( x(k ), u (k )) 0
k =0 K 1

Equao 13-B Observe que a funo objetivo min um escalar que depende de funes (G, F), denominado de um funcional (uma funo de funes) e tem propriedades anlogas s das funes. Note tambm que as restries so equaes diferenciais ou de diferenas. A funo G o custo ou penalidade associada ao erro entre o valor desejado final e o alcanado. A funo F a perda ou o custo relacionado com os erros transientes e/ou esforo de controle. A forma das funes G e F dependem das caractersticas fsicas do problema, mas podem ser assim classificados: 1. Problema de tempo mnimo: G = 0 e F = 1 , ento = tf - to . Por exemplo, quando queremos determinar o tempo mnimo de parada ou partida de uma planta. 2. Problema de erro final mnimo: G = [x(tf ) - xd )]TA[x(tf ) - xd )] e F = 0 , ento minimizar equivalente a minimizar a norma quadrada do vetor diferena entre o valor alcanado x(tf )e o valor desejado xd . Por exemplo quando x o vetor de componentes indesejados em um sistema reacional a batelada, ento x(tf ) a concentrao ao final da operao do reator, tf.
Ricardo Kalid - Otimizao de Processos kalid@ufba.br

178 3. Problema de mnimo esforo de controle: G = 0 e F = uTCu, ento a medida do esforo (quantidade de energia ou de utilidades) desprendido para atingir o objetivo. Por exemplo, quando queremos sair de um certo estado inicial a um estado final determinado consumindo o mnimo de energia. 4. Problema de rastreamento: G = 0 e F = [x(t) - xd(t))]TB[x(t) - xd(t))], ento minimizar equivalente a minimizar a integral do erro transiente entre o valor atual da trajetria, x(t) , e a trajetria desejada, xd(t) . Para fins prticos necessrio limitar a ao de controle, ento F = [x(t) - xd(t))]TB[x(t) xd(t))] + u(t)TCu(t) . 5. Problema geral: F = [x(t) - xd(t))]TB[x(t) T T xd(t))] + u(t) Cu(t)eG = [x(tf) - xd)] A[x(tf) - xd )] . Por exemplo o problema do regulador linear quadrtico ("linear quadratic regulator"- LQR)

13.1. Algoritmos para o Problema de Controle timo


Existem basicamente trs abordagens para resolver o PCO: 1. Parametrizao ou discretizao das FR's e resoluo do problema com PNL; 2. Utilizao do princpio da otimalidade de Bellman que conduz ao uso da Programao Dinmica PD. 3. Utilizao do princpio mnimo de Pontryagin atravs da aplicao dos multiplicadores de Lagrange. Embora esteja fora do escopo deste curso apresentar detalhes dessas abordagens na tabela 13-a comparamos as caractersticas, vantagens e desvantagens de cada um desses procedimentos.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

179 Tabela 13-A: Mtodos para PCO Abordagem Discretizao da FO Caractersticas Utilizar os mtodos de PNL j estudados. Requer a parametrizao por polinmios ou discretizao das FR's por diferenas finitas. Programao Dinmica Utiliza o princpio de otimalidade de Bellman. Malha fechada Vantagens Desvantagens

Estamos mais Geralmente leva a acostumados com problemas com PPNL. nmero elevado de variveis de s vezes temos deciso. uma boa estimativa(s) do polinmio(s) aproximador(es), Pode ser aplicado a sistemas lineares, nolineares, contnuos, discretos, variantes no tempo, MIMO, determinsticos, de parmetros concentrados ou distribudos. A discretizao conduz SEANL.

Exige grande esforo computacional para um nmero elevado de variveis de deciso

Princpio mnimo de Pontryagin

Define-se o funcional Hamiltoniano, anlogo funo Lagrangeana

Pode ser aplicado a sistemas lineares, nolineares, contnuos, discretos, Define-se um variantes no vetor de cotempo, MIMO, estado, anlogo determinsticos, de aos multiplicadores de parmetros concentrados. Lagrange Define as condies necessrias para um ponto timo Malha aberta Conduz a sistemas de equaes elegantes e gerais.

Requer conhecimento de funcionais e de clculo variacional para o entendimento e aplicao da teoria.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

180

Apndice I:

Controle timo de um Reator a Batelada

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

181

Apndice II:

Reprodues de pginas do livro

Process Analysis by Statistical Methods Himmelblau, D. M.

Ricardo Kalid - Otimizao de Processos kalid@ufba.br

You might also like