(((( j ))))TCSCjrefjsup jTCSC
5. Propostas do Trabalho
Como mencionado anteriormente, muitos métodos de otimização vêm sendo estudados e analisados com o intuito de automatizar o processo de sintonia de controladores de sistemas elétricos de potência. Neste capítulo, os métodos de busca local e global utilizados neste trabalho serão descritos de forma a permitir a compreensão do algoritmo híbrido que será proposto neste trabalho.
O método de busca local utilizado é baseado na otimização via gradiente descendente [27]. Este método prevê que dado um ponto inicial no espaço de busca, obtém-se um novo ponto situado sobre a reta definida por este ponto e pelo gradiente da função objetivo. Essa é a direção para a qual, localmente, a função decresce mais rapidamente (no sentido contrário ao do gradiente). Determina-se o novo ponto como sendo aquele em que a função objetivo atinge o mínimo sobre essa reta (para um problema de minimização de uma única variável). A partir desse novo ponto, repete-se o processo, até que seja satisfeito um critério de convergência. A principal desvantagem deste método, assim como de métodos de busca local, é a necessidade de uma condição inicial factível.
Para que as desvantagens dos métodos de busca local sejam minimizadas, é proposto um método de busca global baseado em algoritmos genéticos. Tal método deve posicionar o algoritmo em uma bacia de convergência promissora, partindo de soluções geradas aleatoriamente (outra vantagem em relação aos métodos de busca local, que requerem uma estimativa inicial precisa).
Portanto, a proposta do trabalho é explorar os benefícios dos métodos de busca local e global. Isto deve ser feito partindo do método de busca global até que o mesmo chegue em seu critério de parada. Após encontrar um conjunto de parâmetros promissor para o controlador, o algoritmo proposto finaliza a busca global e começa uma busca local. A saída do algoritmo, quando o critério de parada do método de busca local é atingido, são os parâmetros sintonizados dos controladores do sistema de potência estudado. A principal vantagem deste método híbrido é a economia de tempo, visto que os métodos de busca global requerem um elevado esforço computacional se comparados aos métodos de busca local.
Primeiramente, neste capítulo, é descrito o método do gradiente descendente (otimização local) e, posteriormente, são apresentados fundamentos básicos de computação
evolutiva, com maior ênfase em algoritmos genéticos. O algoritmo híbrido proposto neste trabalho é apresentado no final deste capítulo.
5.1. Método do Gradiente
Seja n
f : →→→→ uma função dada. Uma das estratégias mais naturais para resolver o problema
n
min f(x), x∈∈∈∈ (5.1)
é que dada uma aproximação n k
x ∈∈∈∈ da solução do problema, encontra-se um ponto n
k 1
x ++++ ∈∈∈∈ tal que
((((
k 1))))
(((( ))))
kf x ++++ <<<<f x (5.2) Isto pode ser feito de várias maneiras. Uma das maneiras é tomar uma direção
n k
d ∈∈∈∈ tal que f é decrescente a partir do ponto xk nessa direção, ou seja,
((((
k k))))
(((( ))))
kf x + α+ α+ α+ αd <<<<f x (5.3) onde ααα é um comprimento do passo (fixo neste caso). Assim, obtém-se o iterando α
k 1 k k
x ++++ ====x + α+ α+ α+ αd . Repete-se o processo para o novo ponto xk 1++++ , etc. Tal método é conhecido
como método de descida [27].
Uma escolha bastante plausível para a direção de busca dk é a direção contrária à do
gradiente da função objetivo no ponto xk. Isto se deve ao fato de que, localmente, essa é a
direção na qual a função decresce mais rapidamente. Este método é conhecido como método do gradiente e seu algoritmo pode ser visto a seguir [28] [53]:
Algoritmo do Gradiente k←←←←1 pequeno valor α ← α ← α ← α ←
enquanto (não for atingido o critério de parada) faça
g k ←←←← gradiente f . , x
((((
(((( ))))
k))))
d k ←←←← -gk xk 1++++ ←←←← xk+ α+ α+ α+ αdk k ←←←← k+1 fim-enquantoTal algoritmo baseia-se apenas na informação local a respeito da variação da função em todas as direções do espaço (sintetizada no gradiente da função). A única suposição implícita na aplicação desse algoritmo é de que a função f x seja diferenciável.
(((( ))))
Em problemas de otimização, a suposição mais geral que se faz em relação ao sistema sendo otimizado é que se tenha um algoritmo que, recebendo como entradas o vetor de variáveis de otimização, forneça o valor da função objetivo para tal vetor. Desta forma, portanto, não se dispõe de funções que diretamente forneçam o gradiente da função objetivo para certo valor especificado das variáveis de otimização. Porém, a construção de um algoritmo que forneça o valor do gradiente da função para um dado ponto não é uma tarefa muito difícil. Tal algoritmo pode ser construído, de maneira bem simplificada, através da definição de gradiente, substituindo uma fórmula diferencial por diferenças finitas. Seja
n
x∈∈∈∈ o vetor de variáveis de otimização, e seja ei o vetor definido por:
i 0 0 e 1 i-ésima posição 0 0 = → == →→ = → (5.4)
Considere-se um certo δ >δ >δ >δ >0, tal que δ ≈δ ≈δ ≈δ ≈0. O algoritmo de cálculo aproximado do gradiente
da função no ponto x pode ser definido por [28] [53]:
Algoritmo de Cálculo do Gradiente
para i←←←←1 até n faça
((((
i))))
(((( ))))
i f x e f x g ←←←← + δ+ δ+ δ+ δ −−−− δ δδ δ fim-para 1 n g g g ← ←← ←Para a convergência do método do gradiente parte-se da premissa comum de que a função objetivo possua um único mínimo local no domínio em questão (que necessariamente possui validade local em alguma vizinhança de um ponto ótimo estrito) [28]. Desta forma, um algoritmo de otimização unidimensional, para exemplificar e facilitar a análise pode ser construído com fundamento nessa premissa, a partir do teorema a seguir.
Teorema 5.1. Seja uma função f . :
(((( ))))
→→→→ . Seja um domínio [a,b]⊂⊂⊂⊂ , no qual fpossui um único mínimo local x*. Sejam ainda dois pontos xa e xb tais quea b
a<<<<x <<<<x <<<<b (5.5)
Se ocorrer
(((( ))))
a(((( ))))
bf x <<<<f x (5.6)
então a solução minimizante x*
não se encontra no intervalo x ,b , e se ocorrer b
(((( ))))
a(((( ))))
bf x >>>>f x (5.7)
então a solução minimizante x* não se encontra no intervalo a, xa .
A demonstração do Teorema 5.1 pode ser encontrada em [28] ou [53].
Com esse teorema, torna-se possível a construção de um algoritmo que exclui, a cada passo, um trecho do segmento considerado, de forma a fazê-lo contrair-se. Quando o
segmento estiver suficientemente “pequeno”, pode-se considerar que ocorreu a convergência para o ponto mínimo. É importante salientar que este teorema também é valido para o caso multivariável, pois a direção de busca é dada por uma reta.
Após produzir uma sequencia de estimativas da função objetivo, avaliadas para uma sequencia de pontos do espaço de variáveis de otimização, o algoritmo de otimização deverá se aproximar de um ponto de mínimo local da função. Como a aproximação para o ótimo ocorre de forma assintótica, é necessário em algum momento interromper o algoritmo, sendo a aproximação obtida considerada o valor de mínimo local da função. Há três critérios básicos possíveis para a interrupção do algoritmo: i) estabilização do valor da função objetivo; ii) estabilização do vetor de variáveis de otimização e; iii) anulação do vetor gradiente.
i) Se o valor da função objetivo, em um certo número de iterações, não variar mais que um certo valor em relação à diferença entre seu valor máximo estimado em todo processo de otimização e seu valor mínimo verificado também em todo processo, pode-se interromper o algoritmo supondo que dificilmente ocorreriam melhoras significativas da função objetivo;
ii) O critério de parada via estabilização do vetor de variáveis de otimização é assumido quando considera como estabilizado um algoritmo cujo vetor de variáveis varia, nas ultimas iterações (quantidade definida pelo projetista), menos de alguns por cento da “faixa de variação” verificada do vetor de variáveis durante toda a execução. Desta forma, o vetor xmin é o vetor cujas componentes são o mínimo valor ocorrido para
cada componente do vetor de variáveis durante toda execução do algoritmo;
iii) É possível também determinar o final de um processo de otimização com uma informação a respeito do vetor gradiente da função objetivo. Sabe-se que, se a função objetivo é diferenciável, seu gradiente será nulo em seus pontos de mínimos locais. Desta forma, pode-se detectar a ocorrência desses mínimos pela monitoração do valor da norma do gradiente.
O método do gradiente converge para solução dos problemas de otimização mediante as condições formuladas na proposição a seguir [28].