Составители:
Рубрика:
10
2
y
1
< y
2
, тогда новый отрезок будет составлять: a
1
=x
1
и b
1
=b
0
. В новом
отрезке также выбираются две точки:
x
1
(1)
= x
2
и x
2
(1)
= a
1
+ k⋅(b
1
- a
1
).
И в первом и во втором случаях рассчитывается лишь одна новая точка
(вторая известна). В новой точке рассчитывается значение функции и вновь
производится сравнение в двух точках, и в зависимости от этого выбирается
новый отрезок. Процедура повторяется до тех пор, пока не будет выполняться
условие (
b
k
- a
k
) ≤ ε , где ε – точность поиска.
3.2.6 Метод Фибоначчи
В методе Фибоначчи требуется, чтобы общее число n вычислений функ-
ции было выбрано заранее, так как точки, в которых производится вычисление,
определяются по формулам:
)(
2
)(
1
kk
kn
kn
k
k
ab
F
F
ax −⋅+=
−
−−
, k=0, ..., n-2 ;
)(
1
)(
2
kk
kn
kn
k
k
ab
F
F
ax −⋅+=
−
−−
, k=0, ..., n-2 ;
где
F
i
= F
i-1
+F
i-2
, i=1, 2, ... F
0
= F
1
= 1 - называется последовательностью чисел
Фибоначчи (1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ... , т.е. каждый член
последовательности рассчитывается как сумма двух предыдущих членов).
Алгоритм поиска.
Выбирается начальный отрезок [
a
0
, b
0
] и число вычислений n таким обра-
зом, чтобы
Δ
−
>
00
ab
F
n
, где Δ > 0 – конечная длина отрезка.
Затем рассчитываются координаты двух точек:
)(
00
2
0
)0(
1
ab
F
F
ax
n
n
−⋅+=
−
,
)(
00
1
0
)0(
2
ab
F
F
ax
n
n
−⋅+=
−
и значение функции в этих точках
y
1
=f(x
1
(0)
) и y
2
=f(x
2
(0)
).
В случае
y
1
< y
2
a
1
=a
0
и b
1
=x
2
(0)
, )(
11
1
3
1
)1(
1
ab
F
F
ax
n
n
−⋅+=
−
−
, x
2
(1)
= x
1
(0)
.
В случае
y
1
> y
2
a
1
= x
1
(0)
и b
1
= b
0
, x
1
(1)
= x
2
(0)
, )(
11
1
2
1
)1(
2
ab
F
F
ax
n
n
−⋅+=
−
−
.
Таким образом данная процедура повторяется (n – 2) раза.
При
k = (n – 2) точки x
k
и y
k
совпадают и соответствуют середине отрезка,
поэтому чтобы обеспечить дальнейшее сокращение отрезка, точка последнего
вычисления функции перемещается вправо на величину константы
различимости
δ
>0, которая выбирается заранее существенно меньше заданной
точности.
2 y1 < y2 , тогда новый отрезок будет составлять: a1=x1 и b1=b0. В новом отрезке также выбираются две точки: x1(1) = x2 и x2(1)= a1 + k⋅(b1 - a1). И в первом и во втором случаях рассчитывается лишь одна новая точка (вторая известна). В новой точке рассчитывается значение функции и вновь производится сравнение в двух точках, и в зависимости от этого выбирается новый отрезок. Процедура повторяется до тех пор, пока не будет выполняться условие (bk - ak) ≤ ε , где ε – точность поиска. 3.2.6 Метод Фибоначчи В методе Фибоначчи требуется, чтобы общее число n вычислений функ- ции было выбрано заранее, так как точки, в которых производится вычисление, определяются по формулам: F x1( k ) = ak + n−k −2 ⋅ (bk − ak ) , k=0, ..., n-2 ; Fn−k F x2( k ) = ak + n−k −1 ⋅ (bk − ak ) , k=0, ..., n-2 ; Fn−k где Fi= Fi-1+Fi-2, i=1, 2, ... F0= F1= 1 - называется последовательностью чисел Фибоначчи (1, 1, 2, 3, 5, 8, 13, 21, 34, 55, ... , т.е. каждый член последовательности рассчитывается как сумма двух предыдущих членов). Алгоритм поиска. Выбирается начальный отрезок [a0, b0] и число вычислений n таким обра- b − a0 зом, чтобы Fn > 0 , где Δ > 0 – конечная длина отрезка. Δ Затем рассчитываются координаты двух точек: F x1( 0) = a0 + n−2 ⋅ (b0 − a0 ) , Fn F x2( 0) = a0 + n−1 ⋅ (b0 − a0 ) Fn и значение функции в этих точках y1=f(x1(0)) и y2=f(x2(0)). В случае y1 < y2 F a1=a0 и b1=x2(0) , x1(1) = a1 + n−3 ⋅ (b1 − a1 ) , x2(1)= x1(0) . Fn−1 В случае y1 > y2 F a1= x1(0) и b1= b0 , x1(1)= x2(0) , x2(1) = a1 + n−2 ⋅ (b1 − a1 ) . Fn−1 Таким образом данная процедура повторяется (n – 2) раза. При k = (n – 2) точки xk и yk совпадают и соответствуют середине отрезка, поэтому чтобы обеспечить дальнейшее сокращение отрезка, точка последнего вычисления функции перемещается вправо на величину константы различимости δ >0, которая выбирается заранее существенно меньше заданной точности. 10
Страницы
- « первая
- ‹ предыдущая
- …
- 8
- 9
- 10
- 11
- 12
- …
- следующая ›
- последняя »