Главная > Математика > Вычислительные методы для инженеров
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

§ 3.3. Вычислительные методы

Обсудив некоторые важные особенности вычислительных задач, обратим внимание на те методы, которые используются в вычислительной математике для преобразования задач к виду, удобному для реализации на ЭВМ, и позволяют конструировать вычислительные алгоритмы. Мы будем называть эти методы вычислительными. С некоторой степенью условности можно разбить вычислительные методы на следующие классы: 1) методы эквивалентных преобразований; 2)

методы аппроксимации; 3) прямые (точные) методы; 4) итерационные методы; 5) методы статистических испытаний (методы Монте-Карло). Метод, осуществляющий вычисление решения конкретной задачи, может иметь довольно сложную структуру, но его элементарными шагами, являются, как правило, реализации указанных методов. Дадим о них общее представление.

1. Методы эквивалентных преобразований.

Эти методы позволяют заменить исходную задачу другой, имеющей то же решение. Выполнение эквивалентных преобразований оказывается полезным, если новая задача проще исходной или обладает лучшими свойствами, или для нее существует известный метод решения, а, может быть, и готовая программа.

Пример 3.13. Эквивалентное преобразование квадратного уравнения к виду (выделение полного квадрата) сводит задачу к проблеме вычисления квадратного корня и приводит к известным для ее корней формулам (3.2).

Эквивалентные преобразования иногда позволяют свести решение исходной вычислительной задачи к решению вычислительной задачи совершенно иного типа.

Пример 3.14. Задача отыскания корня нелинейного уравнения может быть сведена к эквивалентной задаче поиска точки глобального минимума функции . В самом деле, функция неотрицательна и достигает минимального значения, равного нулю, при тех и только тех х, для которых

2. Методы аппроксимации.

Эти методы позволяют приблизить (аппроксимировать) исходную задачу другой, решение которой в определенном смысле близко к решению исходной задачи. Погрешность, возникающая при такой замене, называется погрешностью аппроксимации. Как правило, аппроксимирующая задача содержит некоторые параметры, позволяющие регулировать величину погрешности аппроксимации или воздействовать на другие свойства задачи. Принято говорить, что метод аппроксимации сходится, если погрешность аппроксимации стремится к нулю при стремлении параметров метода к некоторому предельному значению.

Пример 3.15. Один из простейших способов вычисления интеграла состоит в аппроксимации интеграла на основании формулы прямоугольников величиной

Шаг является здесь параметром метода. Так как представляет собой специальным образом построенную интегральную сумму, то из определения определенного интеграла следует, что при метод прямоугольников сходится,

Пример 3.16. Учитывая определение производной функции для ее приближенного вычисления можно использовать формулу Погрешность аппрюксимации этой формулы численного дифференцирования стремится к нулю при

Одним из распространенных методов аппроксимации является дискретизация — приближенная замена исходной задачи конечномерной задачей, т.е. задачей, входные данные и искомое решение которой могут быть однозначно заданы конечным набором чисел. Для задач, которые не являются конечномерными, этот шаг необходим для последующей реализации на ЭВМ, так как вычислительная машина в состоянии оперировать лишь с конечным количеством чисел. В приведенных выше примерах 3.15 и 3.16 была использована дискретизация. Хотя точное вычисление интеграла и предполагает использование бесконечного числа значений (для всех его приближенное значение можно вычислить, используя конечное число значений в точках а Аналогично, задача вычисления производной, точное решение которой предполагает выполнение операции предельного перехода при (а следовательно, использование бесконечного числа значений функции сводится к приближенному вычислению производной по двум значениям функции.

При решении нелинейных задач широко используют различные методы линеаризации, состоящие в приближенной замене исходной задачи более простыми линейными задачами. Пример 3.17. Пусть требуется приближенно вычислить значение для на ЭВМ, способной выполнять простейшие арифметические операции. Заметим, что по определению х является положительным корнем нелинейного уравнения Пусть некоторое известное приближение к Заменим параболу а прямой являющейся касательной, проведенной к ней в

Рис. 3.4

точке с абциссой Точка пересечения этой касательной с осью дает лучшее, чем приближение и находится из линейного уравнения Решая его, получаем приближенную формулу

Например, если для взять то получится уточненное значение

При решении разных классов вычислительных задач могут использоваться различные методы аппроксимации; к ним можно отнести и методы регуляризации решения некорректных задач. Заметим, что методы регуляризации широко используют и для решения плохо обусловленных задач.

3. Прямые методы.

Метод решения задачи называют прямым, если он позволяет получить решение после выполнения конечного числа элементарных операций.

Пример 3.18. Метод вычисления корней квадратного уравнения по формулам является прямым методом. Элементарными здесь считаются четыре арифметические операции и операция извлечения квадратного корня.

Заметим, что элементарная операция прямого метода может оказаться довольно сложной (вычисление значений элементарной или специальной функции, решение системы линейных алгебраических уравнений, вычисление определенного интеграла и т.д.). То, что она принимается за элементарную, предполагает во всяком случае, что ее выполнение существенно проще вычисления решения всей задачи.

При построении прямых методов существенное внимание уделяется минимизации числа элементарных операций.

Пример 3.19 (схема Горнера). Пусть задача состоит в вычислении значения многочлена

по заданным коэффициентам и значению аргумента х. Если вычислять многочлен непосредственно по формуле (3.12), причем находить последовательным умножением на х, то потребуется выполнить операций умножения и операций сложения.

Значительно более экономичным является метод вычисления, называемый схемой Горнера. Он основан на записи многочлена в следующем эквивалентном виде:

Расстановка скобок диктует такой порядок вычислений: Здесь вычисление значения потребовало выполнения только операций умножения и операций сложения.

Схема Горнера интересна тем, что дает пример оптимального по числу элементарных операций метода. В общем случае значение нельзя получить никаким методом в результате выполнения меньшего числа операций умножения и сложения.

Иногда прямые методы называют точными, подразумевая под этим, что при отсутствии ошибок во входных данных и при точном выполнении элементарных операций полученный результат также будет точным. Однако при реализации метода на ЭВМ неизбежно появление вычислительной погрешности, величина которой зависит от чувствительности метода к ошибкам округления. Многие прямые (точные) методы, разработанные в домашинный период, оказались непригодными для машинных вычислений именно из-за чрезмерной чувствительности к ошибкам округления. Не все точные методы таковы, однако стоит заметить, что не совсем удачный термин "точный" характеризует свойства идеальной реализации метода, но отнюдь не качество полученного при реальных вычислениях результата.

4. Итерационные методы.

Это — специальные методы построения последовательных приближений к решению задачи. Применение метода начинают с выбора одного или нескольких начальных приближений. Для получения каждого из последующих приближений выполняют однотипный набор действий с использованием найденных ранее приближений — итерации. Неограниченное продолжение этого итерационною процесса теоретически позволяет построить бесконечную последовательность приближений к решению

итерационную последовательность. Если эта последовательность сходится к решению задачи, то говорят, что итерационный метод сходится. Множество начальных приближений, для которых метод сходится, называется областью сходимости метода.

Заметим, что итерационные методы широко используются при решении самых разнообразных задач с применением ЭВМ.

Пример 3.20. Рассмотрим известный итерационный метод, предназначенный для вычисления (где метод Ньютона. Зададим произвольное начальное приближение Следующее приближение вычислим по формуле выведенной с помощью метода линеаризации в примере 3.17 (см. формулу (3.11)). Продолжая этот процесс далее, получим итерационную последовательность в которой очередное приближение вычисляется через по рекуррентной формуле

Известно, что этот метод сходится при любом начальном приближении так что его область сходимости — множество всех положительных чисел.

Вычислим с его помощью значение на -разрядной десятичной ЭВМ. Зададим (как в примере 3.17). Тогда Дальнейшие вычисления бессмысленны, так как из-за ограниченности разрядной сетки все следующие уточнения будут давать тот же результат. Однако сравнение с точным значением показывает, что уже на третьей итерации были получены 6 верных значащих цифр.

Обсудим на примере метода Ньютона некоторые типичные для итерационных методов (и не только для них) проблемы. Итерационные методы по своей сути являются приближенными; ни одно из получаемых приближений не является точным значением решения. Однако сходящийся итерационный метод дает принципиальную возможность найти решение с любой заданной точностью Поэтому, применяя итерационный метод, всегда задают требуемую точность и итерационный процесс прерывают, как только она достигается.

Хотя сам факт сходимости метода безусловно важен, он недостаточен для того, чтобы рекомендовать метод для использования на практике. Если метод сходится очень медленно (например, для получения решения с точностью в 1% нужно сделать итераций), то он непригоден для вычислений на ЭВМ. Практическую ценность представляют быстро сходящиеся методы, к которым относится и метод Ньютона (напомним, что точность в вычислении была достигнута всего за три итерации). Для теоретического исследования скорости сходимости и условий применимости итерационных методов выводят так называемые априорные оценки погрешности, позволяющие еще до вычислений дать некоторое заключение о качестве метода.

Приведем две такие априорные оценки для метода Ньютона. Пусть Известно, что тогда для всех и погрешности двух последовательных приближений связаны следующим неравенством:

Здесь величина, характеризующая относительную погрешность приближения. Это неравенство говорит об очень высокой квадратичной скорости сходимости метода: на каждой итерации "ошибка" возводится в квадрат. Если выразить через погрешность начального приближения, то получим неравенство

из которого вида роль хорошего выбора начального приближения. Чем меньше величина тем быстрее будет сходиться метод.

Практическая реализация итерационных методов всегда связана с необходимостью выбора критерия окончания итерационного процесса. Вычисления не могут продолжаться бесконечно долго и должны быть прерваны в соответствии с некоторым критерием, связанным, например, с достижением заданной точности. Использование для этой цели априорных оценок чаще всего оказывается невозможным или неэффективным. Качественно верно описывая поведение метода, такие оценки являются завышенными и дают весьма недостоверную количественную информацию. Нередко априорные оценки содержат неизвестные

величины (например, в оценках (3.14), (3.15) содержится величина а), либо предполагают наличие и серьезное использование некоторой дополнительной информации о решении. Чаще всего такой информации нет, а ее получение связано с необходимостью решения дополнительных задач, нередко более сложных, чем исходная.

Для формирования критерия окончания по достижении заданной точности, как правило, используют так называемые апостериорные оценки погрешности — неравенства, в которых величина погрешности оценивается через известные или получаемые в ходе вычислительного процесса величины. Хотя такими оценками нельзя воспользоваться до начала вычислений, в ходе вычислительного процесса они позволяют давать конкретную количественную оценку погрешности.

Например, для метода Ньютона (3.13) справедлива следующая апостериорная оценка:

позволяющая оценивать абсолютную погрешность приближения через модуль разности двух последовательных приближений. Она дает возможность сформулировать при заданной точности очень простой критерий окончания. Как только окажется выполненным неравенство

вычисления следует прекратить и принять за приближение к с точностью

Пример 3.21. Если значение требуется найти с точностью то неравенство (3.16), как видно из приведенных в примере 3.20 вычислений, будет выполнено при Так как то с учетом погрешности округления можно записать результат:

5. Методы статистических испытаний (методы Монте-Карло).

Это — численные методы, основанные на моделировании случайных величин и построении статистических оценок решений задач. Этот класс методов, как принято считать, возник в 1949 г., когда Дж. фон Нейман и

С. Улам использовали случайные числа для моделирования с помощью ЭВМ поведения нейтронов в ядерном реакторе. Эти методы могут оказаться незаменимыми при моделировании больших систем, но подробное их изложение предполагает существенное использование аппарата теории вероятностей и математической статистики и выходит за рамки данной книги.

<< Предыдущий параграф Следующий параграф >>
Оглавление