• Nenhum resultado encontrado

2.2.1 Conceituação

Um processo de otimização é um procedimento aplicado a um problema no qual há o interesse na maximização ou minimização de uma determinada grandeza que varia em dependência de outras grandezas (variáveis).

Resumidamente, a otimização consiste em um processo automático de busca sistemática e dirigida responsável por determinar a melhor condição de projeto a partir de um espaço de busca viável.

A grandeza a ser maximizada ou minimizada é denominada função objetivo do problema. As variáveis das quais a função objetivo depende podem estar sujeitas a um conjunto de restrições.

Pode-se declarar a formulação de um problema de otimização da seguinte maneira: Minimizar f(x), x = [x1, x2, x3, x4, x5, ..., xn]T, x ∈ Rn

Sujeito às restrições: gj(x) 0 , j = 1, 2, ..., m

lj(x) = 0, j= 1, 2, ..., P , i = 1, 2, ..., n

x é um vetor de dimensão n, denominado vetor de pontos de projeto. Dentro desse

vetor, o ponto x que apresenta o menor valor da função f dentro da região delimitada pelas condições de restrição é chamado mínimo global da função. Um ponto que apresentar valor mínimo para a função em toda uma sub-região determinada é chamado mínimo local. são limites superiores e inferiores, respectivamente. são restrições de desigualdade e igualdade. f(x) é a função objetivo do problema. (SILVA, 2011)

Algoritmos de otimização aplicados à engenharia são responsáveis por substituir uma parte onerosa do trabalho do projetista. Esses algoritmos tratam da forma de alterar as variáveis de projeto, avaliar as consequências dessas alterações e tornar a modificar essas variáveis do até que o objetivo (minimizar ou maximizar alguma grandeza) seja atingido.

Vários algoritmos de otimização de busca local (baseados em gradiente) estão bem desenvolvidos atualmente, respaldados por resultados matemáticos que garantem a existência de ótimos locais bem como a convergência do método para esses valores. Alguns desses métodos são amplamente difundidos em toolboxes de programas comerciais, seja para programação linear e não-linear, porém quase sempre destinados apenas a buscas locais.

Em uma vasta gama de problemas a utilização de um método de busca local pode mostrar-se satisfatória - especialmente quando se conhece o comportamento da função

objetivo e das restrições aplicadas ao espaço de busca, sendo possível obter de fato o ótimo global da função ao fornecer como ponto de inicialização do método um ponto que já se sabe estar próximo do valor ótimo da função no domínio.

É possível, ainda, que a obtenção de um mínimo global não seja de tanta importância em um determinado problema. Muitas vezes é necessário apenas que o projetista atinja um valor razoável da função objetivo com pequena variabilidade em sua vizinhança de forma a obter um projeto tecnicamente viável.

No entanto, há problemas em que a forma da função objetivo é desconhecida ou que apresenta comportamentos que geram dificuldade inerente ao processo de busca local – por exemplo, funções multimodais como a ilustrada na Figura 2.5.

Figura 2.5: Função de Price (ALBUQUERQUE, 2006)

Para a Função de Price, ilustrada na Figura 2.5, o mínimo global, ligeiramente diferente dos demais, se encontra na origem. Esse é um tipo de função que apresenta dificuldades para ser minimizada globalmente por meio de um algoritmo de busca local baseado em gradiente. Problemas multimodais estão entre os mais difíceis em otimização global. (ALBUQUERQUE, 2006)

Para problemas em que a obtenção do mínimo global é realmente importante (como, por exemplo, a otimização do rendimento hidráulico de uma turbina, em que pequenas variações do rendimento representam grandes variações na energia gerada), é interessante recorrer a algoritmos de otimização que possuem formulações que evitem que o processo de otimização estacione em um ótimo local. É o caso, por exemplo, do Simulated Annealing, que, por esse motivo, foi o algoritmo escolhido para ser aplicado neste trabalho.

2.2.2 Simulated Annealing

Annealing é o processo de recozimento de um metal, no qual este é submetido a uma

temperatura elevada (acima de sua temperatura de recristalização) e é, em seguida, resfriado lentamente, de modo que ao final do processo o resultado seja uma massa homogênea, de baixa dureza e alta ductilidade.

O Simulated Annealing é um método de otimização inspirado no processo de recozimento. Nesse método, o processo de otimização é realizado por níveis que simulam os níveis de temperatura do recozimento. Em cada nível, dado um ponto ∈ , são gerados vários pontos na vizinhança de u e o correspondente valor da função objetivo f é calculado para cada um desses pontos. Cada ponto gerado é aceito ou rejeitado conforme uma determinada probabilidade (que se relaciona à temperatura do nível do processo). À medida que a temperatura do processo diminui, a probabilidade de aceitação de pontos que piorem a função objetivo cai, sendo que, em uma fase evoluída do processo (e, portanto com uma temperatura baixa), apenas pontos que melhorem a função objetivo são aceitos.

O algoritmo a seguir apresenta os passos desse processo. Nesse algoritmo, ∈ representa a temperatura do k-ésimo nível. São fixados inicialmente T0 e L0 e um ponto inicial

u é escolhido em S. Inicializar u, Tk, Lk. Repetir Para l=1 até Lk Gerar w de V(u) Se , então u := w.

Caso contrário, se random [0,1)< exp ( )

Então u := w. k=k+1

Calcular Lk e Tk

Como salientado, o Simulated Annealing foi concebido de forma a aceitar pontos que piorem o valor da função objetivo no início do processo de otimização. Essa meta-heurística permite que o algoritmo evite o problema que os algoritmos baseados em gradiente apresentam de estacionar em ótimos locais, tentando buscar o ótimo global do problema no limite do processo.

De fato, como se trata de um algoritmo de busca local probabilística, a obtenção de um ótimo global é mais provável, mas não pode ser garantida. Alguns métodos baseados no

Simulated Annealing ainda realizam ciclos de reaquecimento seguidos novamente por outros

processos de resfriamento de maneira a aumentar a chance de sucesso em se obter o ótimo global.

Documentos relacionados