Полак__Применение_вычислительной_математики_в_химической_и_физической_кинетике (972294), страница 21
Текст из файла (страница 21)
В литературе описаны модификации метода нелинейных оценок как упрощающие программирование 1771, так н усложняющие его 1691. Хотя описываемый метод известен сравнительно давно [78] и для простых в кинетическом отношении задач использовался еще в 1950 г. [791, но вследствие вычислительных трудностей он не находил широкого применения. Лишь с появлением ЭВМ метод нелинейных оценок получил распространение при решении разнообразных задач, в том числе и задач нахождения кинетических параметров [73). Описанным методом была изучена кинетика целого ряда процессов: окисления нафталина [281, нзомеризации ц-гексака 1801, синтеза аммиака [811, окисления метана [82, 831 и др.
112, 26, 27, 53, 84 — 88]. Программа этого метода применялась также для замены градиентных спусков в методе оврагов (см. стр. 107). Имеется целый ряд публикаций по применению метода нелинейных оценок в других областях физической химии. Например, в работах 189 — 91) этим методом изучали различные свойства полимерных материалов, в [92 — 941 находили константы образования н устойчивости комплексов различных металлов.
Метод нелинейных оценок применяют для расшифровки спектров ЭПР [95 — 97], ЯМР [98), масс-спектров [991, колебательных спектров [100], и других целей [101 — 1031. Метод начали применять также и при изучении физической кинетики. Так, в работе [104) он был использован для определения сечений захвата электронов. д) Метод Ньютона — Рафсона. Если в разложении (20) сохранить члены второго порядка, то можно добиться более высокой скорости сходнмости (т. е. потребуется меньшее число итераций для достижения минимума 8 (6)). Однако прн этом возрастает время, требующееся для вычисления вторых производных д'с (6) ,э " э , (и = 1, 2, ., Ж; [, 1 = 1, 2, , Р) .
дд; дээ ' Этот метод может оказаться целесообразным в тех случаях, когда соответствующие производные можно найти аналитически [70, 105, 106]. Формулы для определения величины поправок ЛО, необходимых для осуществления итераций, приведены в работе [701.
е) Метод Флетчера — Пауэлла. В статье [56] предложен оригинальный метод определения локального минимума сложной функции многих переменных, основанный на максимальном использовании информации о характере поверхности 8 (6), получаемой в процессе итераций. Предполагается, что в окрестности 6' функцию 8 (6) молсно достаточно надеясно аппроксимировать квадратичным полиномом 5(0) — Юе+ 'Яцо,+ —,' ,'Я ~ЬпОео,, 1=1 3=1 или в матричной записи В (О) = Ле + А 0 + 1 ОтЛО, (33) где 4 — вектор-столбец первых производных до" (О)/дО; (1 =1, 2,... ..., р);  — матрица вторых производных даЯ (О)/дО;дО; (е, / = =1,2,...,р). Вектор градиента суммы квадратов записывается в виде (34) Я=А — , 'ЛО.
Обозначим через 0* координаты минимума. Тогда, если квадратическое приближение (33) выполняется точно, расстояние до минимума от произвольной точки Ое будет равно Оо Н-1Д (35) Если же (33) выполняется не точно, необходимо строить итерационный процесс. Флетчер и Пауэлл [56[ предложили не вычислять матрицу вторых производных .В на каждом шагу итераций, а, задаваясь вначале некоторой произвольной квадратной матрицей Не, менять ее в процессе движения к минимуму таким образом, чтобы в пределе она стремилась к обратной матрице вторых производных З-'. Авторы [56[ показали, что Н '" = Н" + (~" + Н, (36) где * аЮ вЂ” Нуу ее т,Е а а т т 9 = —, Л ==, д = (7 " — О, ю = — х соНЮ, ее у уатту а;о — скаляр, обеспечивающий минимум Я (О) на направлении Ое' — аНС Очередное пряблиясение находится по формуле 0 "=0 +ю.
(37) В качестве Н' рекомендуется брать единичную матрицу [56[. Процесс вычислений на шаге т следующий. Находим градиент .еп'" = А'" + Н' 0"', (38) * Номер птераппп т е ооозяачеавях еа, О, В и у опущеп. для чего нам необходимо вычислить составляющие вектора А (первые производные Я (О) по О). Варьируем далее о) 0 таким образом, чтобы параметры, рассчитываемые по формуле 0=0 — аН С (39) приводили к минимуму Я (0). Па этом этапе возможна квадратическая или кубическая аппроксимация Я (О) по а [56[.
Завершается этот этап вычислением О ' по формуле (37). Далее находим хе заменяя в формуле (38) индекс т на т + 1. После этого рассчитываем Н '-' по (36). Такая процедура обеспечивает устойчивость и квадратическую сходимость итераций. Показано [56), что если выражение (33) выполняется точно, то, начав итерации с выбора единичной матрицы Н', их удается закончить за р итераций (р — число определяемых параметров).
Основным недостатком метода является сложность программирования, однако при наличии стандартных программ перемножения и сложения матриц он может найти более широкое применение, чем метод нелинейных оценок. В работе [52[ метод Флетчера — Пауэлла был применен для определения констант скоростей реакций типа , ьз А — ~ В+ С вЂ” эП Представляет интерес использование программы этого метода для определения координат локальных минимумов в методе оврагов. ж) Другие поисковые методы Кроме описанных выше методов, при отыскании кинетических параметров находят применение (пока ограниченное ) следующие методы: метод непрерывного продолжения по параметру [10[, метод случайного поиска [17[, метод параллельных касательных [27[, специальный метод исследования характера склонов поверхности Я (О) [107! и другие методы [108).
а. Нелоаалъньис звеевод (ввегаод оврагов) Было замечено [14, 51, 55[ что в большинстве случаев при ш г; боре констант локальными методами не удается точно фиксировать положение минимума из-за наличия у функции «оврагов» со слабым наклоном, т. е. областей очень медленного изменения функции. В результате те параметры, варьирование которых слабо влияет на изменение суммы квадратов, находятся неточно. Для преодоления этих трудностей разработан ряд модкфнкац1ш, 101 приближающих локальные методы к нелокальным методам поиска [51, 55]. Более удобным в этом отношении является метод оврагов, предложенный Гельфандом и Цетлиным [47, 109!.
Процедура этого метода такова, что он позволяет не только определить координаты локального минимума, но и обнаружить все минимумы в заданной области изменения параметров. Наличие оврагов характерно не только для задач большой размерности, но и в случаях, когда по опытн ым данным необходимо определить небольшое число констант. Так, например, при обработке кинетических данных по бромированию бутендисульфоната [110! было обнаружено, что иэ двух констант, входящих в уравнение кинетики —," == ><> [БС] [Вг,] + )<, [БС] [Вг,]', константа скорости 7<, оказывает малое влияние на минимизируемую сумму квадратов.
Разброс значений й» составлял при этом 150 — 200о4. Таким образом, множество констант скоростей реакций, протекающих в какой-либо химической системе, можно почти всегда разбить на два подмножества: 1) константы, которые оказывают существенное влияние на сумму квадратов отклонений, 2) константы, изменение которых приводит лишь к относительно небольшому изменению целевой функции. При этом сумму квадратов отклонений вычисленных значений концентраций от экспериментальных можно назвать, согласно терминологии Гельфанда и Цетлина [109], «хорошо организованной» функцией. Для минимизации таких функций этими авторами разработан эффективный метод нелокального поиска, названный ими методом оврагов [109!. Этот метод нашел широкое применение для обработки данных рентгеноструктурного анализа [47). В литературе имеется также пример использования метода оврагов Гельфанда — Цетлина при опти»<изацин контактных аппаратов для окисления двуокиси се«>ы [111].
Как отмечалось Гельфандом [47], для успешного применения этого метода важно не знание самой структуры минимизируемой функции, а лишь факт ее «хорошей организации». Поэтому было интересно расширить область применения метода оврагов, предложенного в работе [109], применив его к задачам кинетики сложных химических систем. Необходимо отметить, что на возможность определения констант скоростей химических реакций методом Гельфанда и Цеткина указывалось ранее разными авторами [21, 55]. Островским с сотр. [51, 55] разработан ряд алгоритмов, улучшающих сходимость процесса минимизации в условиях оврагов. Однако, судя по публикациям [29, 55а], решение кинетических задач по этим алгоритмам приводит к значительным затратам ма>винного времени. Авторы [29! указыва>от также, что использованная пми програ»>ма [55! в ряде случаев не приводила и достаточно 1]>2 точной локализации минимумов, что являлось причиной нарушения аррениусовской зависимости констант скоростей от температуры.
В отличие от нее процедура Гельфанда — Цетлина свободна от этого недостатка, что было покааано нами при расчете ряда механизмов в искусственно построенной задаче (см. стр. 149) и требует меньших затрат времени ЗВМ. Для реализации метода оврагов Гельфанда — Цетлина в кинетических вадачах нами составлена и опробована стандартная программа для ЭВМ типа М-20 [61[. Программа работает следующим образом. 1) Задаются приближенные значения тех констант скоростей, которые нужно найти по опытным данным *: й(з) = ( гт ° ° ° йр).
Если некоторые константы известны точно, то они фиксируются и в процессе счета не меняются. 2) Производится градиентный спуск к локальному минимуму суммы квадратов отклонений по подпрограмме, основанной на алгоритме модифицированного метода градиента, предложенном в работе [58[. При этом значение каждой константы на (и + 1) шаге спуска находится по формуле (40) гдеа — шаг в направлении, обратном градиенту суммы квадратов отклонений; 6; — нормированная величина 1-й составляющей градиента (41) Обычно производные суммы квадратов до" (тз)/дй, берутся с весами, равными единице [51, 55). Введение же весов 1 1- Ь,' улучшает характер поверхности Я (тс), приводя к сокращению общего числа итераций [48[.
Величина градиентного шага выбирается автоматически в зависимости от угла ~р между последовательными направлениями движения: (42) е При изучении кинетики в неизотермических условиях константы скорости представляются некоторой функцией температуры (например в виде аррениусовской зависимости), поэтому необходимо определять несколько кинетических параметров для каждой константы скорости. Это привокит к увеличению размерности задачи, не меняя по существу программы поиска. Если соз >р (О, то >х = 0,25а -'.
Если же соз ~р ь О, то шаг вычисляется по формуле аш = >х ' (с( + с(в созагр). (43) (44) Коэффициенты г>х и д зависят от характера задачи. Мы приняли Их = 0,5 и да = 1 в соответствии с рекомендациями 1581. Рис. ЗО. Последовательность точек графического иаобра>кекия расчета по методу оврагов х — точки отхода; >у — точки спуска; Л вЂ” овса>див>а шаг 3) Градиентный спуск считается законченным, если все произведения а;6; станут на каком-либо шаге меньше некоторой заранее фиксированной величины Л;, называемой градиентной пробой [47!. Точку спуска обозначим №, ее координаты — хоо (рис. 30). 4) В значение одной из найденных констант вносится сравнительно большое возмущение (например 30 — 40%), и с новым набором констант )акоп производится градиентный спуск, в результате которого мы получаем очередную точку спуска №.>х с координатами х>„п (рис.