![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Шаг 1. Находим: x 1 = 0,382, x 2 = 0,618, f (x 1) = 0,704, f (x 2) = 0,685, e n = 0,5.
Шаг 2. e n = 0,5 > e =0,1, поэтому переходим к шагу 3.
Шаг 3. f (x 1) > f (x 2), поэтому полагаем a = 0,382, x 1 = 0,618, f (x 1) = 0,685, x 2= 0,764, e n = 0,309 и вычисляем f (x 2) = 0,807. Переходим к следующей итерации, начиная с шага 2.
Результаты вычислений на остальных итерациях представлены в табл. 2.3 (стрелки указывают значения, переходящие на данную итерацию с предыдущей).
Таблица 2.3
Номер Итерации | a | b | e n | x1 | x2 | f(x1) | f(x2) | Сравнение f (x 1) и f (x 2) |
0,382 | 1,000 | 0,309 | 0,618 | 0,764 | 0,685 | 0,807 | f (x 1) < f (x 2) | |
0,382 | 0,764 | 0,191 | 0,528 | 0,618 | 0,668 | 0,685 | f (x 1) < f (x 2) | |
0,382 | 0,618 | 0,118 | 0,472 | 0,528 | 0,673 | 0,668 | f (x 1) > f (x 2) | |
0,472 | 0,618 | 0,073 | 0,073 < 0,1 — точность достигнута |
Таким образом, , f *» f (0,55) = 0,67 (сравните с решением примеров 2.3—2.5).
Замечание. Число итераций, необходимое для достижения заданной точности e, можно найти из условия e n £ e с учетом соотношения (2.16): .
Так как N вычислений f (x) позволяют выполнить N - 1 итераций метода золотого сечения, то достигнутая в результате этих вычислений точность определения х* составляет
. (2.17)
Второй метод деления отрезка пополам. Этот метод, использующий на каждой итерации три пробные точки, обеспечивает последовательное уменьшение длины отрезка, содержащего х *, ровно вдвое. Рассмотрим способ исключения отрезков, применяемый в рассматриваемом методе.
Разделим отрезок [ a; b ] на четыре равные части пробными точками , i =1,2,3. Сравним значения f (x 1) и f (x 2). Если f (x 1) £ f (x 2), то уменьшенный вдвое отрезок поиска точки х* найден — это [ а; х2 ]. Если f (x 1) > f (x 2), то произведем еще одно сравнение значений f (x): при f (x 2)£ f (x 3), перейдем к отрезку [ x 1; х3 ],а в противном случае — к отрезку [ x 2; b ].
Отметим, что каким бы ни оказался новый отрезок, одна из уже использованных пробных точек переходит на его середину, становясь новой точкой x 2 . Таким образом, для проведения следующей итерации на вновь полученном отрезке потребуется вычисление не более двух новых значений f (x) (либо только в точке x 1, либо еще и в точке x 3).
Перечислим основные шаги алгоритма второго метода деления отрезка пополам.
Шаг 1. Положить . Вычислить значение f (x 2) и перейти к шагу 2.
Шаг 2. Положить . Вычислить значение f (x 1) и перейти к шагу 3.
Шаг 3. Сравнить f (x 1) и f (x 2). Если f (x 1) £ f (x 2), то продолжить поиск на отрезке [ а; x 2], положив b= x 2, x 2 = x 1, f (x 1) = f (x 2), и перейти к шагу 5, иначе — положить , вычислить значение f (x 3) и перейти к шагу 4.
Шаг 4. Сравнить f (x 2) и f (x 3). Если f (x 2) £ f (x 3), то перейти к отрезку [ x 1; x 3], положив a= x 1, b = x 3, иначе — продолжить поиск на отрезке [ x 2; b ], положив а = x 2, x 2 = x 3, f (x 2)= f (x 3). Перейти к шагу 5.
Шаг 5. Проверка на окончание поиска. Вычислить и сравнить с e. Если en > e, то перейти к следующей итерации, вернувшись к шагу 2, иначе — завершить поиск, положив х*» x 2 , f *» f (x 2).
Пример 2.7. Второй метод деления отрезка пополам.
Решить задачу, приведенную в примере 2.3: f (x) = x 4 + e-x ® min, x Î[0;1], e=0,1.
Дата публикования: 2015-04-07; Прочитано: 313 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!