Maximização de Funções
Simulated Annealing
Angela Claudia Martin Duarte
Eduardo Montenegro Castro Junior
Cassio Pascoal Costa
Ernesto Peregrino de Rezende Junior
Definição do Problema
O problema consiste em maximizar
funções continuas em um intervalo
qualquer, com uma precisão escolhida
pelo usuário, utilizando um método
heurístico.
Vantagens do Método Heurístico
Permite Encontrar soluções muito boas,
mesmo que a função tenha um
comportamento muito instável.
Permite encontrar máximos de funções
em intervalos não diferenciáveis .
Implementação
Gera um vetor aleatório binário
Converte o vetor binário em um valor
decimal dentro do intervalo(não gera
inviabilidade!!!).
Calcula o f(x) inicial.
Manipula o vetor binário.
Aplica o S.A.
Função Exemplo
F(x)=0.4 +sinc(4x) + 1.1sinc(4x +2) +
0.8sinc(6x-2) + 0.7sinc(6x-4).
X[-2,2] Intervalo.
sinc(x)= 1 para x=0.
sinc(x)= sen(πx)/ πx para x !=0.
Cálculo de X
X=xmin +[ xmax-xmin]. B/R
onde:
B=valor decimal correspondente a V[i]
R=valor decimal correspondente a máximo de
V[i], sendo o mesmo definido de acordo com a
precisão escolhida.
Cálculo de X
Resultados:
x
-0,506611
-0,508991
-0,50713
-0,503803
-0,507069
-0,506275
-0,507922
-0,505817
-0,506794
-0,507862
f(x)
1,501555
1,501561
1,501564
1,501223
1,501563
1,501541
1,501545
1,50151
1,50156
1,501549
xm=-0,5068274
desvio=0,004%
F(x)m=1,5015071
Download

MaxFunction - DECOM-UFOP