Vous êtes sur la page 1sur 1

Algoritmo de Fibonacci

A ideia é partir de um intervalo inicial [a0,b0] que contenha um mínimo da função f, vamos
apertando esse intervalo para novos valores [a,b] que são obtidos a partir de números de
Fibonacci.

𝟏
Dada uma tolerância ε, escolher o menor n que satisfaça 𝑭𝒏 < (𝒃𝟎 − 𝒂𝟎 ) < 𝑭𝒏+𝟏 . Esse n
𝜺
será o número de iterações a fazer.
a = a 0 e b = b0
yprev = a+(Fn/Fn+2)*(b0-a0)
zprev = a+(Fn+1/Fn+2)*(b0-a0)
se f(yprev) <= f(zprev) então
b = zprev
senão:
a = yprev
para de 2 até n:
se f(yprev) <= f(zprev) então:
ypos = a+(Fn-k+1/Fn+2)*(b0-a0)
zpos = yprev
senão:
ypos = zprev
zpos = a+(Fn-k+2/Fn+2)*(b0-a0)
se f(ypos) <= f(zpos) então:
b = zpos
senão:
a = ypos
yprev = ypos
zprev = zpos

Vous aimerez peut-être aussi