ВУЗ:
Составители:
Рубрика:
Алгоритм метода квадратичной интерполяции:
1. Вводим а, b, погрешность eps определения точки локального
минимума. Вычисляем шаг h=0,2·(b–a). В качестве точки x
2
бе-
рем середину отрезка [a,b], т.е. x
2
=(а+b)/2. Вычисляем f
2
=f (x
2
).
Полагаем x
1
равным x
2
. N=1.
2. Если оба условия N = 1 и (x
1
–h) ≥ a выполняются, переходим к
шагу 3, иначе − к шагу 6.
3. x
1
= x
1
– h. Вычисляем f
1
= f (x
1
).
4. Если условие f
1
> f
2
выполняется, то полагаем N = 0 (точка x
1
найдена).
5. Возвращаемся на шаг 2.
6. Если условие N = 1 выполняется, то это означает, что точка x
1
<
x
2
, для которой f(x
1
) > f(x
2
) не найдена. Печать "нет x
1
, умень-
шить a". Выход из программы;
7. N=1, x
3
=x
2
.
8. Если хотя бы одно из условий N = 1 или (x
3
+h) ≤ b не выполня-
ется, то переходим к шагу 12.
9. Вычисляем x
3
= x
3
+ h, f
3
= f (x
3
).
10. Если условие f
3
> f
2
выполняется, полагаем N = 0 (т.е. точка x
3
найдена).
11. Возвращаемся к шагу 8.
12. Если условие N = 1 выполняется, то печать "x
3
>x
2
такое, что,
f(x
3
)>f(x
2
) не найдено. Увеличить b." Выход из программы.
13. Увеличиваем счетчик итерации N = N + 1. Вычисляем x
5
(чис-
литель формулы (7.18)) и x
6
(знаменатель формулы (7.18)).
14. Если знаменатель отличен от нуля, т.е. |x
6
| < eps, то полагаем
R=0 и переходим к шагу 20.
15. Находим точку минимума параболы
6
5
4
x
x
x =
. Вычисляем
f
4
=f(x
4
), R=f '(x
4
).
16. Если условие |R| < eps выполняется, то это означает, что точка
x
4
является и точкой минимума целевой функции f, поэтому по-
лагаем x
2
= x
4
и переходим к шагу 20.
75
Алгоритм метода квадратичной интерполяции:
1. Вводим а, b, погрешность eps определения точки локального
минимума. Вычисляем шаг h=0,2·(ba). В качестве точки x2 бе-
рем середину отрезка [a,b], т.е. x2=(а+b)/2. Вычисляем f2=f (x2).
Полагаем x1 равным x2. N=1.
2. Если оба условия N = 1 и (x1h) ≥ a выполняются, переходим к
шагу 3, иначе − к шагу 6.
3. x1 = x1 h. Вычисляем f1 = f (x1).
4. Если условие f1 > f2 выполняется, то полагаем N = 0 (точка x1
найдена).
5. Возвращаемся на шаг 2.
6. Если условие N = 1 выполняется, то это означает, что точка x1 <
x2, для которой f(x1) > f(x2) не найдена. Печать "нет x1, умень-
шить a". Выход из программы;
7. N=1, x3=x2.
8. Если хотя бы одно из условий N = 1 или (x3+h) ≤ b не выполня-
ется, то переходим к шагу 12.
9. Вычисляем x3 = x3 + h, f3 = f (x3).
10. Если условие f3 > f2 выполняется, полагаем N = 0 (т.е. точка x3
найдена).
11. Возвращаемся к шагу 8.
12. Если условие N = 1 выполняется, то печать "x3>x2 такое, что,
f(x3)>f(x2) не найдено. Увеличить b." Выход из программы.
13. Увеличиваем счетчик итерации N = N + 1. Вычисляем x5 (чис-
литель формулы (7.18)) и x6 (знаменатель формулы (7.18)).
14. Если знаменатель отличен от нуля, т.е. |x6| < eps, то полагаем
R=0 и переходим к шагу 20.
x5
15. Находим точку минимума параболы x4 =
x6 . Вычисляем
f4=f(x4), R=f '(x4).
16. Если условие |R| < eps выполняется, то это означает, что точка
x4 является и точкой минимума целевой функции f, поэтому по-
лагаем x2 = x4 и переходим к шагу 20.
75
Страницы
- « первая
- ‹ предыдущая
- …
- 73
- 74
- 75
- 76
- 77
- …
- следующая ›
- последняя »
