Амосов А.А., Дубинский В.А., Копченова Н.В. Вычислительные методы для инженеров (1994) (1095853), страница 11
Текст из файла (страница 11)
3 а м е ч а н и е. Так как для решения вычислительных задач используют ЭВМ, точность которых определяется разрядностью мантиссы или эквивалентной величиной границы относительной погрешности округления ям, то представляется более естественным исследование относительной устойчивости. б. О некорректных задачах. Длительное время считалось, что некорректные задачи, решения которых неустойчивы, не имеют физического смысла и не представляют ценности для приложений.
Однако это мнение оказалось ошибочным. Как выяснилось, многие важные прикладные задачи некорректны. Не вызывает, например, сомнения 48 практи еская важность решения некорректных задач дифференцирования суммирования ряда (см. примеры 3.5, 3.6). К некорректным задачам относятся также обратные задачи геофизики, астрофизики, спектро афии, многие задачи распознавания образов, задачи синтеза и ряд д гих прикладных задач. К нас оящему времени разработана теория решения многих классов некорректных задач. Важная роль в создании методов решения таких задач принадлежит российским математикам, в первую очередь Л.~.Тихоновуг.
Эти методы (лгетоды регуляризации) довольно сложны и выходят за рамки данной книги. Для первого знакомства с ними можно ренэмендовать учебное пособие [79]. з 3.2. Обусловленность вычислительной задачи 1. Определения. Пусть вычислительная задача корректна (ее решение существует, единственно и устойчиво по входным данным). Теоретически наличие у задачи устойчивости означает, что ее решение может быть найдено со сколь угодно малой погрешностью, если только гарантировать, что погрешности входных данных достаточно малы. Однако на практике погрешности входных данных не могут быть сделаны сколь угодно малыми, точность их ограничена.
Даже то, что исходные данные нужно будет ввести в ЭВМ, означает, что их относительная точность будет заведомо ограничена величиной порядка ем (см. ~ 2.5). В реальности, конечно, уровень ошибок в исходной информации будет существенно выше. Как же повлияют малые, но конечные погрешности входных данных на решение, как сильно способны они исказить желаемый результат". Для ответа на этот вопрос введем новые понятия.
Под обуслооленноспгью вычислительной задачи понимают чувствительность ее решения к малым погрешностям входных данйых. Задачу называют хорошо обуслооленнои, если малым погрешностям входных данных отвечают малые погрешности решения, и плахо обуслооленног1, если возможны сильные изменения решения. Часто оказывается возможным ввести количественную меру степени обусловленности вычислительной задачи — число обуслооленноснги.
Эту величину можно интерпретировать как коэффициент возможного возрастания погрешностей в решении по отношению к вызвавшим их погрешностям входных данных. г Андрей Николаевич Тихонов (1906 — 1 993) — российский математик. 49 Пусть между абсолютными погрешностями входных данн х х и решения у установлено неравенство Л(у ) и ~Ь( ).
! (3.5) Тогда величина и называется абсолютныл число и обуслооленности. Если же установлено неравенство О(у ) ~ 4ибб(х ) (3.6) между относительными ошибками данных и решения, то величину и называют относительныл число и обусловленности. В неравенствах (3.5), (3.6) вместо погрешностей Л и Б могут фигурировать их границы Ь и 3. Обычно под числом обусловленности и задачи понимают одну из величин и или иб, причем выбор бывает ясен из смысла задачи. реальной возможности существенного роста ошибок. Грубо говоря, если и — 10'~, где и — относительное число обусловленности, то поря— док У показывает число верных цифр, которое может быть утеряно в результате по сравнению с числом верных цифр входных данных.
Каково то значение и, при котором следует признать задачу плохо обусловленной? Ответ на этот вопрос существенно зависит, с одной стороны, от предъявляемых требований к точности решения и, с дру— гой — от уровня обеспечиваемой точности исходных данных. Напри— мер, если требуется найти решение с точностью 0.1%, а входная информация задается с точностью 0.02%, то уже значение и = 10 сигна— лизирует о плохой обусловленности. Однако (при тех же требованиях к точности результата) гарантия, что исходные данные задаются с точностью не ниже 0.0001%, означает, что и при и = 10З задача хоро— шо обусловлена.
С простым, но очень важным примером плохо обусловленной задачи мы уже познакомились в ~ 2.3. Это задача вычитания приближен— ных чисел одного знака. Оценка (2.10) дает для нее значение относи- 50 Чаще все же под числом обусловленности понимают относительное число обусловленности. Для плохо обусловленной задачи и > 1. В некотором смысле неустойчивость задачи — это крайнее проявление плохой обусловленности, отвечающее значению и = х. Конечно, и— это максимальный коэффициент возможного возрастания уровня ошибок, и для конкретных исходных данных действительный коэффици.ент возрастания может оказаться существенно меньше. Однако при выводе оценок (3.5) и (3.6) стремятся к тому, чтобы не завышать значений и и и и поэтому соотношение и > 1 все же свидетельствует о тельно1!о числа обусловленности и = ! а + Ь|/! а — Ь!.
Так как в приме— ре 2.11!имеем и м !1 + х*!/!1 — х*! ~ 7 ° 105, то потеря пяти верных значащих цифр здесь не представляется удивительной. 2. Примеры плохо обусловленных задач. Первым рассмотрим классический пример, принадлежащий Дж.Уилкинсону [83).
Пример 3.8 Пусть требуется найти корни многочлена Х(х) = (х — 1)(х — 2) (х — 20) — хго 210 х10 + по заданным значениям его коэффициентов. Из теории известно, что эта задача устойчива. Возьмем коэффициент а = — 210 при х10 и изменим его значение на а* = — 210 + 2 гз. Как повлияет эта, казалось бы, незначительная ошибка на значения корней? Заметим, что х1 — — 1, хг = 2, ..., хг0 — 20— точные значения корней. Вычисленные с высокой точностью корни возмущенного многочлена таковы: х* в 1.00000; х' ~ 2.00000; х* и 3.00000„ х* 4.00000; х* й 5.00000; х,* ~ 6.00001; х,' и 6.99970; х,* = 8.00727; х,* ~ 8.91725; х 0 10 0953 ~ 0 643501з х а 1~ 11'7936 + 1 652331 х,' ~ 13.9924 1 2.51883а; х* 11 й 16.7307 х 2.81262а; х* в 19.5024 + 1.940331; х' ~ 20.8469.
формулу (2.23) для производной неявной функции, имеем б(х1) и1,б(а*), где дГ дГ Учитывая, что — = х'а и — = Р (х) дх а=-г10 го П (х — 1), 'ф1 210 к1а получаем и1С— 51 Как нетрудно видеть, корни х1, ..., ха оказались практически нечувствительны к погрешностям в коэффициенте а. В то же время некоторые корни превратились в комплексные и имеют относительные погрешности от 6 до 18%, несмотря на то, что б(а*) и 6.
10 0% В данном случае нетрудно провести анализ чувствительности корней. Пусть г(х, а) = хго + ах10 + ....Будем рассматривать корни хь как функции параметра а, т.е. хь — — хЬ(а). Равенство Г (хТ,(а), а) = О, выполненное в окрестности а = -210, задает х1, как неявную функцию от а. Пользуясь второй из формул (2.22) для границы относительной погрешности и применяя Вычисление чисел иь дает следующие значения: и1 в 2 10 ~в, и2 ~ 9-10 в, ив ~ 10 в, и~ ~ 10 1, ив ~ 3 ° 10т, ив в 2.10з ит ~ 8' 10 ив в 2 10в ив в 2 10т и,о а 2, 10в ип ~ 9.10в, и12 ~ 4'10в игв ~ 10то иы ц 2.10то и1в ~ 3.101о иш ~ 3.10то и1т ~ 3.101о итв ~ 101о и1в ~ 3.10в ито ~ 5,10в свидетельствующие о чрезвычайно плохой обусловленности старших корней.
Следует обратить серьезное внимание на то, что задача вычисления корней многочленов высокой степени часто оказывается плохо обусловленной. Поэтому имеет смысл с определенной осторожностью относиться к алгоритмам, составной частью которых является вычисление корней многочленов высокой степени. К сожалению, эта задача может быть плохо обусловленной и для многочленов невысокой степени, в особенности, если вычисляются кратные корни. Пример 3.9. Пусть ищется решение уравнения (т — 1)4 = 0 с кратным корнем. Ошибка в младшем коэффипиейте, равная 10 в, приводит к уравнению (.т — 1) = 10 в, имеющему следующие корни: х] т = 1 + 10 ~, хв 4 = 1 1 10 т т; В этом случае ошибка в 10 % в одном из коэффициентов привела к погрешности решения в 1%, что явно говорит о плохой обусловленности задачи.