Otimização Numérica

Assim como o problema de determinação de raízes, a otimização está relacionada à busca de um ponto da função. A diferença da natureza dos pontos almejados pode ser observada na Figura 1 – na determinação de raízes se procura os pontos em que a função atinge o zero, enquanto na otimização se busca os pontos de máximo e mínimo desta.


FIGURA 1: Diferença entre raízes e pontos ótimos em uma função de uma variável.
Fonte: CHAPRA, Steven C.. Métodos Numéricos para Engenharia. Página 286.

Devido à necessidade de manter os custos baixos, engenheiros constantemente se confrontam com problemas de otimização. Isso porque otimização significa obter a melhor solução para o problema, desde que atingindo o objetivo desejado e consideradas as restrições impostas. Alguns casos de uso de otimização estão listados abaixo:

• Projeto de uma aeronave com peso mínimo e resistência máxima.
• Trajetória ótima de veículos espaciais.
• Projeto de estruturas de engenharia civil com custo mínimo.
• Projeto de reservatórios de água como represas para diminuir os danos de enchentes e ao mesmo tempo fornecendo a máxima potência hídrica.
• Previsão do comportamento de estruturas pela minimização da energia potencial.
• Estratégia de corte de material com custo mínimo.
• Projeto de bombas e equipamento de transferência de calor para eficiência máxima.
• Maximização da potência de saída de redes elétricas e de máquinas, ao mesmo tempo minimizando a geração de calor.
• Rota mais curta de um caixeiro-viajante visitando várias cidades em uma viagem de vendas.
• Planejamento e escalonamento ótimos.
• Análise estatística e modelos com erro mínimo.
• Redes de tubulação ótimas.
• Controle de estoque.
• Planejamento de manutenção para minimizar custos.
• Minimização de tempo de espera e de tempo ocioso.
• Projeto de sistemas de tratamento de dejetos para atingir padrões de qualidade de água com custo mínimo.
Fonte: CHAPRA, Steven C.. Métodos Numéricos para Engenharia. Página 287.

Resoluções analíticas dos problemas de otimização podem ser fornecidas por meio do cálculo diferencial, geralmente através do estudo de raízes da primeira derivada de funções. Todavia, a dificuldade na resolução aumenta à medida que aumenta o número de funções e de variáveis e é nesta perspectiva que surge a necessidade de desenvolver técnicas matemáticas e computacionais que refinem o processo.

Método dos Mínimos Quadrados
O Método dos mínimos quadrados é uma técnica utilizada para encontrar o melhor ajuste para um conjunto de dados. Ele trabalha na busca de parâmetros que minimizem o valor do somatório dos quadrados dos resíduos (ponderados pela incerteza), o que caracteriza tal método como problema de Otimização.
 
O MMQ é muito utilizado na determinação de parâmetros de uma relação funcional ou de um valor mais provável de uma grandeza medida varias vezes. Logo, o objeto a se OTIMIZAR nos problemas envolvendo MMQ são as constantes (parâmetros) que relacionam as grandezas.
Por exemplo, ao tentar se ajustar uma função polinomial f(x) = A + B*x, deriva-se o somatório em relação a cada parâmetro (A e B) e iguala cada derivada a 0. Isto resultará num sistema de equações, que podem ser descritas em forma matricial, cuja solução será os parâmetros A e B otimizados. Tal abordagem pode ser utilizada para ajustes de funções polinomiais de grau N>2, o que vai acarretar é claro no aumento das dimensões das matrizes envolvidas:
Somatório no ajuste de uma função linear e sistema a se resolver para encontrar os parâmetros.

O MMQ também é utilizado em sistemas não lineares, como nos casos envolvendo funções exponenciais. Nestes casos, geralmente se promove a linearização do problema, de modo à ainda se trabalhar com a álgebra linear na resolução.
A função fminsearch do MATLAB pode ser utilizada na resolução de problemas envolvendo MMQ, facilitando a vida do usuário que não precisa ter o trabalho de derivar o somatório e isolar os parâmetros. A função exige apenas como argumento a função a se procurar o ponto de mínimo, no caso do MMQ a função do somatório com f(xiigual ao ajuste desejado, e o chute inicial dos parâmetros a se determinar.

Problemas envolvendo restrições: fmincon
Na maioria dos casos, os problemas de otimização estão sujeito a restrições. Elas podem ser restrições expressas por desigualdades ou expressas por igualdades, como apresentado abaixo:
di(x) ≤  ai                   i = 1,2,..., m
ei(x) = bi                  i = 1,2,..., p

Num problema envolvendo lucro, por exemplo, o problema de maximização estará sujeito a restrições referentes à limitação de recursos d(x)≤L. Outra restrição comum é geralmente o cuidado em se trabalhar somente com valores positivos (x≥0), já que para algumas situações valores negativos são fisicamente impossíveis.
Um dos procedimentos analíticos utilizados na resolução de problemas envolvendo restrições é o Método dos Multiplicadores de Lagrange. Ele é utilizado para obter pontos de máximos e mínimos locais quando as variáveis do problema estão sujeitas a restrições expressas por igualdades. Ou seja, para encontrar o máximo ou mínimo de uma f(x,y) sujeita há uma restrição g (x,y) = K se trabalha a partir da seguinte relação:

Onde λ é conhecido como Multiplicador de Lagrange e o operador de diferenciação faz surgir um sistema de equações cuja solução será os valores de x, y e λ. Quanto mais variáveis (funções com mais dimensões), o problema apresentará mais equações a serem resolvidas.
O MATLAB apresenta uma função chamada fmincon para trabalhar com restrições lineares. Na sua lista de parâmetros (fun,x0,A,b,Aeq,beq,lb,ub) consta:
·         a função a que se deseja maximar ou otimizar, fun.
·         o chute inicial para o ponto ótimo, x0.
·         as restrições de desigualdade em formato matricial, Ax < b
·         as restrições de igualdade em formato matricial, Aeq * x = beq
·         Os limites inferiores das variáveis, lb.
·         Os limites superiores das variáveis, ub.

No problema de reconciliação abaixo, a partir de valores medidos, utilizou-se a função fmicon para estimar vazões condizentes com o balanço de massa (restrições de igualdade):

Massa (kg/h)   
Incerteza (%)
M1
161
5
M2
79
1
M3
80
1
M4
20
10
M5
63
5

FIGURA 1: Código da resolução de um problema de reconciliação

A partir desse código, chegamos aos resultados reconciliados, que foram os seguintes:
FIGURA 2: Valores de massa reconciliados

FIGURA 3: Desvios associados a cada variável reconciliada

Clique aqui para ter acesso aos códigos.

Referências
1. CHAPRA, Steven C. "Métodos numéricos para engenharia". 5. ed. São Paulo, SP: McGraw-Hill, 2008.

2. https://blogdaengenharia.com/o-que-e-otimizacao-e-como-aplicar-na-engenharia/









Comentários

Postagens mais visitadas deste blog

Diferenciação Numérica

Resolução numérica de EDOs de 2ª ordem - Método do tiro