2.3 Метод деления отрезка пополам (метод дихотомии, метод бисекции)
Метод деления отрезка пополам является самым простым и надежным способом решения нелинейного уравнения.
Пусть из предварительного анализа известно, что корень уравнения (2.1) находится на отрезке [a0, b0], т. е. x*[a0, b0], так, что f(x*) = 0.
Пусть функция f(x) непрерывна на отрезке [a0, b0] и принимает на концах отрезка значения разных знаков, т.е.
f(a0)f(b0) < 0. (2.2)
Разделим отрезок [a0, b0] пополам. Получим точку x0 = . Вычислим значение функции в этой точке: f(x0). Если f(x0) = 0, то x0 – искомый корень, и задача решена. Если f(x0)0, то f(x0) – число определенного знака: f(x0) > 0, либо f(x0) < 0. Тогда либо на концах отрезка [a0, x0], либо на концах отрезка [x0, b0] значения функции f(x) имеют разные знаки. Обозначим такой отрезок [a1, b1]. Очевидно, что x*[a1, b1], и длина отрезка [a1, b1] в два раза меньше, чем длина отрезка [a0, b0]. Поступим аналогично с отрезком [a1, b1]. В результате получим либо корень x*, либо новый отрезок [a2, b2], и т.д. (рис. 2.2).
Рис. 2.2
Середина n-го отрезка xn = . Очевидно, что длина отрезка [an, bn] будет равна , а т. к. x*[an, bn], то
| xn – x*| £ £ . (2.3)
Погрешность метода. Оценка (2.3) характеризует погрешность метода деления отрезка пополам и указывает на скорость сходимости: метод сходится со скоростью геометрической прогрессии, знаменатель которой q = 1/2. Заметим, что оценка (2.3) является априорной.
Критерий окончания. Из соотношения (2.3) следует, что при заданной точности приближения e вычисления заканчиваются, когда будет выполнено неравенство bn – an < 2e или неравенство n > log2((b0 – a0)/e) – 1. Таким образом, количество итераций можно определить заранее. За приближенное значение корня берется величина xn.
Пример 2.1.
Найдем приближенно x = с точностью = 0.01. Эта задача эквивалентна решению уравнения x5 – 2 = 0, или нахождению нуля функции f(x) = x5 – 2. В качестве начального отрезка [a0, b0] возьмем отрезок [1, 2]. На концах этого отрезка функция принимает значения с разными знаками: f(1) < 0, f(2) > 0.
Найдем число n делений отрезка [1, 2], необходимых для достижения требуемой точности. Имеем:
| xn – x*| £ = £ 10-2,
n6.
Следовательно, не позднее 6-го деления найдем с требуемой точностью, » 1.1484. Результаты вычислений представлены в таблице 2.1.
Таблица 2.1
n | 0 1 2 3 4 5 6 |
an | 1.0000 1.0000 1.0000 1.1250 1.1250 1.1406 1.1406 |
bn | 2.0000 1.5000 1.2500 1.2500 1.1875 1.1875 1.1562 |
xn | 1.5000 1.2500 1.1250 1.1875 1.1406 1.1562 1.1484 |
Зн f(an) | - - - - - - - |
Зн f(bn) | + + + + + + + |
f(xn) | 5.5938 0.7585 -0.2959 0.1812 -0.0691 0.0532 -0.0078 |
bn – an | 1.0000 0.5000 0. 2500 0.1250 0.0625 0.0312 0.0156 |
2.4 Метод простых итераций
Пусть уравнение (2.1) можно заменить эквивалентным ему уравнением
x = j(x). (2.4)
Например, уравнение – 0.5 = 0 можно заменить эквивалентным ему уравнением x = 0.5sinx.
Выберем каким-либо образом начальное приближение x0. Вычислим значение функции j(x) при x = x0 и найдем уточненное значение x1 = j(x0). Подставим теперь x1 в уравнение (2.4) и получим новое приближение x2 = j(x1) и т. д. Продолжая этот процесс неограниченно, получим последовательность приближений к корню:
xn+1 = j(xn). (2.5)
Формула (2.5) является расчетной формулой метода простых итераций.
Если последовательность {xn} сходится при n®, т. е. существует
x* = xn , (2.6)
и функция j(x) непрерывна, то, переходя к пределу в (2.5) и учитывая (2.6), получим:
x* = xn = j(x n -1) = j(xn -1) = j(x*).
Таким образом, x* = j(x*), следовательно, x* – корень уравнения (2.4).
Сходимость метода. Сходимость метода простых итераций устанавливает следующая теорема.
Теорема 2.2. Если в интервале, содержащем корень x* уравнения (2.4), а также его последовательные приближения x0, x1, …, xn, …, вычисляемые по формуле (2.5), выполнено условие:
|j'(x)| £ q < 1, (2.7)
то x* = xn.
т. е. итерационный процесс сходится и справедлива следующая оценка погрешности:
|xn – x*| £ qn|x0 – x*| (2.8)
Оценка (2.8) является априорной. Она показывает, что метод простой итерации сходится со скоростью геометрической прогрессии с знаменателем q. Чем меньше q, тем выше скорость сходимости.
Как следует из теоремы 2.2, условие (2.7) является достаточным для сходимости метода простых итераций. Его выполнение гарантирует сходимость процесса (2.5), но невыполнение условия (2.7), вообще говоря, не означает, что итерационный процесс будет расходиться.
На рис. 2.3 – 2.6 показаны четыре случая взаимного расположения линий y = x и y = j(x) и соответствующие итерационные процессы.
Рис. 2.3 и 2.4 соответствуют случаю |j'(x)| < 1, и итерационный процесс сходится. При этом, если j'(x) > 0 (рис. 2.3), сходимость носит односторонний характер, а если j'(x) < 0 (рис. 2.4), сходимость носит двусторонний, колебательный характер. Рис. 2.5 и 2.6 соответствуют случаю |j'(x)| > 1 – итерационный процесс расходится. При этом может быть односторонняя (рис. 2.5) и двусторонняя (рис 2.6) расходимость.
Рис. 2.3 Рис. 2.4 Рис. 2.5
Рис. 2.6
Погрешность метода. Если известна величина q в условии (2.7), то применима следующая апостериорная оценка погрешности:
|xn – x*| £ |xn – xn – 1|, n > 1. (2.9)
Критерий окончания. Из оценки (2.9) вытекает следующий критерий окончания итерационного процесса. Вычисления следует продолжать до выполнения неравенства
|xn – xn – 1| < e.
Если это условие выполнено, то можно считать, что xn является приближением к x* с точностью e.
Если q £ 0.5, то можно пользоваться более простым критерием окончания:
|xn – xn – 1| < e. (2.10)
Пример 2.2.
Используем метод простой итерации для решения уравнения f(x) = sin x – x2 = 0 с точностью e = 0.001.
Преобразуем уравнение к виду (2.4):
x = , т. е. j(x)= .
Нетрудно убедиться, что корень уравнения находится на отрезке [p/6, p/3]. Например, вычислив значения f(x) на концах отрезка, получим: f(p/6)> 0, а f(p/3)< 0, т. е. функция на концах отрезка имеет разные знаки, что в соответствии с теоремой 2.1 указывает на то, что внутри отрезка есть корень. Расположение корня наглядно иллюстрирует рис.2.7.
Рис. 2.7
Подсчитаем, первую и вторую производные функции j(x):
j '(x) = , j"(x) = .
Так как j"(x) > 0 на отрезке [p/6, p/3], то производная j '(x) монотонно возрастает на этом отрезке и принимает максимальное значение на правом конце отрезка, т. е. в точке p/3. Поэтому, справедлива оценка:
|j '(x)| £ |j '(p/3)| » 0.312.
Таким образом, условие (2.7) выполнено, q < 0.5, и можно воспользоваться критерием окончания вычислений в виде (2.10). В табл. 2.2 приведены приближения, полученные по расчетной формуле (2.5). В качестве начального приближения выбрано значение x0 = 1.
Таблица 2.2
n | xn |
0 1 2 3 4 5 | 1 0.8415 0.8861 0.8742 0.8774 0.8765 |
Критерий окончания выполняется при n = 5, |x5 – x4| < 0.001. Сходимость двусторонняя, качественный характер такой сходимости представлен на рис. 2.4. Приближенное значение корня с требуемой точностью x*0.8765.
... . Рассмотрение метода ветвей и границ для решения задачи о коммивояжере удобнее всего проводить на фоне конкретного примера. Пользуясь введенными здесь обозначениями, мы проводим это описание в следующей лекции. Введем некоторые термины. Пусть имеется некоторая чис- ловая матрица. Привести строку этой матрицы означает выде-лить в строке минимальный элемент (его называют константой приведения) ...
... если - предельная абсолютная погрешность приближённого числа , то (1.2) отсюда следует, что (1.3) Значение предельной абсолютной погрешности, обычно, подбирается интуитивно по смыслу задачи. Пример 2: Определить предельную абсолютную погрешность числа , заменяющего число , точное значение которого нам неизвестно. Так как мы знаем, что , ...
... удивили меня…, хоть речь идёт обо мне самой. Они действительно написаны прекрасным стилем, который превосходит стиль самого очерка" /2/. 2.3. Рождение первенца и критическое перенапряжение Августа Ада Лавлейс работает с большим напряжением. В письмах к Бэббиджу она неоднократно жалуется на утомление, болезни, плохое самочувствие. Наконец, 6 августа Бэббидж отсылает Аде свои последние замечания ...
... в Украине, бывшем Советском Союзе и за рубежом научная школа теоретического программирования. В 2001-м году ее не стало... Но не только в научном плане велика роль женщин в развитии вычислительной техники. Со временем образуется огромное количество различных фирм по разработке и продаже программного и аппаратного обеспечения. Следовательно, разыгрываются человеческие трагедии капиталистического ...
0 комментариев