Нахождение параметров эмпирической зависимости содержания сахара в крови от времени методом наименьших квадратов Vlad, Москва, 15.03.2007 Пусть в результате эксперимента мы получили ряд измерений содержания сахара в крови Ск: Ск1, Ск2, …….., Скn, соответствующих значениям времени t1, t2, ……, tn, которые могут быть представлены на графике в виде точек (t1,Cк1), (t2,Cк2), ……, (tn,Cкn), (рис. 1), и нам необходимо установить эмпирическую зависимость между Ск и t. 8 6 Cg 4 2 0 0 0.5 1 1.5 2 2.5 3 Tg vx Рис. 1. Положение экспериментальных значений (ti, Cкi), на графике. По оси Х – значения времени t, по оси У – содержание сахара в крови Ск. Задача состоит в том, чтобы по данным экспериментальным точкам провести кривую (не ломаную), которая проходила бы как можно ближе к истинной функциональной зависимости Ск f t . Теория вероятностей показывает, что наилучшим приближением будет такая кривая (или прямая) линия, для которой сумма квадратов расстояний по вертикали от точек до кривой будет минимальной (рис. 2). Этот метод и называется методом наименьших квадратов. Суть этого метода состоит в следующем. Предположим, что искомая зависимость выражается функцией Ск f t , A1 , A2 ,......, Am , где A1 , A2 ,....., Am - параметры. Значения этих параметров определяются так, чтобы точки Cкi располагались по обе стороны кривой Ск f t как можно ближе к последней, т. е. чтобы сумма квадратов отклонений измеренных значений Cкi от функции Ск f t была бы наименьшей. Это соответствует предположению, что разброс точек Cкi относительно кривой Ск f t подчиняется закону нормального распределения. Мерой этого разброса является дисперсия выражение – средний квадрат отклонений 2 1 n S n2 Cк j f t j n j 1 , (1) 2 или ее приближенное и требование минимального разброса соответствует требованию минимального значения этого среднего квадрата. Как известно, функция f A принимает минимальное значение при A Amin , если df d2 f f A dA равна нулю, а вторая производная dA2 ее первая производная положительна, при этом значении A Amin . Для функции многих переменных эти условия f A заменяются требованием, чтобы частные производные, т. е. производные по параметру Ai A j i удовлетворяли вышеупомянутым условиям, причем все остальные параметры j при вычислении производных считаются постоянными. 8 6 Cg fit( vx) 4 2 0 0 0.5 1 1.5 2 2.5 3 Tg vx Рис. 2. Кривая Ск f t , построенная по значениям (ti, Cкi) методом наименьших квадратов. По оси Х – значения времени t, по оси У – содержание сахара в крови Ск. Таким образом, из условий минимума мы получаем систему уравнений для определения наилучших значений параметров: f t j S n2 2 n Cк j f t j 0 Ai n j 1 Ai i 1,2,....., m; m n . (2) m Где - количество параметров в эмпирической зависимости, n - количество экспериментальных точек на кривой. Изложенный выше способ использования метода наименьших квадратов примЕним для нелинейной зависимости вида: a f t , a, b, c erf b ln t c erf b c ln t 0 2b (3) В этом случае уравнения (2) принимают вид f t j n 0, Cк j f t j a j 1 n f t j 0, Cк j f t j b j 1 n f t j Cк j f t j 0. n 3 c j 1 (4) т. е. получили систему трех нелинейных уравнений, где f t erf b ln t c erf b c ln t 0 , a 2b f t a 2 2 ln t c exp b 2 ln t c c ln t 0 exp b 2 c ln t 0 b b a erf b ln t c erf b c ln t 0 , 2 b2 f t 2 2 a exp b 2 c ln t 0 exp b 2 ln t с . c (5) Решение системы (4) дает оптимальные значения параметров a, b и c для нелинейной зависимости (3), с помощью которой мы аппроксимируем экспериментальную кривую. Запишем систему уравнений (4) в виде: F1 a, b, c 0, F2 a, b, c 0, F a, b, c 0, 3 (6) где n f t j F , 1 Cк j f t j a j 1 n f t j , F2 Cк j f t j b j 1 n f t j F3 Cк j f t j . n 3, t 0. c j 1 (7) Точное решение системы нелинейных уравнений (6) найти не удается. Поэтому на практике ищется приближенное решение с помощью численных методов. В основу многих современных алгоритмов (квазиньютоновские алгоритмы, метод секущих) положены идеи метода Ньютона для систем нелинейных уравнений, который, как и все иные алгоритмы для подобных систем, относится к классу итерационных алгоритмов. (В отличии от систем линейных уравнений прямые методы для нелинейных систем неприменимы). k k k Пусть найдено приближение a , b , c к решению системы (6). Возникает k 1 k 1 k 1 вопрос: «Каким должно быть следующее приближение a , b , c , которое k k k расположено к решению ближе, чем a , b , c ? Попробуем ответить на этот вопрос. Разложим левые части системы (6) в ряд Тейлора в точке ограничившись линейными членами разложения: a k , b k , c k , F1 k F1 k F1 k k k k F1 a, b, c F1 a , b , c a a b b c c , F2 k F2 k F2 k k k k a b c , F2 a, b, c F2 a , b , c a b c F3 k F3 k F3 k k k k F3 a, b, c F3 a , b , c a a b b c c , (8) Поскольку левые части получившегося разложения должны равняться нулю, приходим к системе линейных уравнений с 3-мя неизвестными: F1 k F1 k F1 k k k k a a b b c c F1 a , b , c , F2 k F2 k F2 k a b c F2 a k , b k , c k , b c a F3 k F3 k F3 k k k k a a b b c c F3 a , b , c , (9) k k k решая которую относительно неизвестных a , b , c , найдем приращение, которое a k 1 a k a k , употребим для вычисления следующего приближения b k 1 b k b k , c k 1 c k c k . Матрица коэффициентов системы (9) F1 F1 b a F2 F2 b a F F3 3 b a F1 c F2 c F3 c (10) называется матрицей Якоби или якобианом. Определим значения коэффициентов в матрице Якоби: 2 f t j n 2 f (t j ) f (t j ) F1 n , Cк j f t j Cк j f t j a a a j 1 a a 2 j 1 2 f t j n f (t j ) f (t j ) f t j F1 n Cк f t Cк f t , j j j j b b j 1 a b a a b j 1 f t j n 2 f (t j ) f (t j ) f t j F1 n Cк j f t j Cк j f t j , c c j 1 a c a a c j 1 f t j n 2 f (t j ) f (t j ) f t j F2 n Cк j f t j , Cк j f t j b a a j 1 a b a b j 1 2 f t j n 2 f (t j ) f (t j ) F2 n , Cк j f t j Cк j f t j b b b j 1 b b 2 j 1 2 f t j n f (t j ) f (t j ) f t j F2 n Cк j f t j Cк j f t j , c c j 1 b c b b c j 1 f t j n 2 f (t j ) f (t j ) f t j F3 n Cк f t Cк f t j , j j j a a j 1 c a c c a j 1 f t j n 2 f (t j ) f (t j ) f t j F3 n Cк j f t j , Cк j f t j c b b j 1 b c c b j 1 2 f t j n 2 f (t j ) f (t j ) F3 n , Cк j f t j Cк j f t j c c j 1 c c c 2 j 1 где 2 f (t ) a 2 2 f (t ) b 2 2 f (t ) c 2 2 f (t ) a b (11) 0, 2 f (t ) 3 2 3 2 2a ln t c exp b 2 ln t c c ln t 0 exp b 2 c ln t 0 , b b 2 a b 2 ln t c exp b 2 ln t c c ln t 0 exp b 2 c ln t 0 , 2 2 2 f (t ) 1 f (t ) , b a a b 2 f (t ) 2 f (t ) 1 f (t ) , a c c a a c 2 f (t ) 2 f (t ) 2 2 2 2 2 a b ln t c exp b 2 ln t c c ln t 0 exp b 2 c ln t 0 . b c c b (12) Тогда, с учетом (12), значения коэффициентов в матрице Якоби можно записать как: 2 n F1 f (t j ) , a j 1 a n F1 F2 1 f (t j ) f t j Cê j f t j , b a a a b j 1 n F1 F3 1 f (t j ) f t j Cê j f t j , c a a a c j 1 2 n 2 f (t j ) f (t j ) F2 , Cê j f t j b b b 2 j 1 n 2 f (t j ) f (t j ) f t j F2 F3 Cê j f t j , c b c b b c j 1 2 n 2 f (t j ) f (t j ) F3 , Cê j f t j c c c 2 j 1 (13) Таким образом, в методе Ньютона на каждом шаге нелинейная задача (6) заменяется линейной задачей (9), в результате решения которой определяется очередное приближение. Метод имеет квадратичную сходимость, что позволяет использовать простой критерий прекращения счета max a k , b k , c k . Из описания метода следует, что он применим, если функции Fi системы (6) непрерывно дифференцируемы и на каждом его шаге определитель матрицы (10) отличен от нуля (т.е. система (9) не является вырожденной). Больше того, для получения надежного решения матрица (10) должна быть хорошо обусловленной. Из приведенного материала видно, что использование метода Ньютона для систем нелинейных уравнений сопряжено с определенными трудностями: (k ) 1) на каждой итерации необходимо вычислять J ( x ) ; 2) на каждой итерации приходится решать систему линейных уравнений, которая может быть плохо обусловленной; 3) метод для многих задач не обладает глобальной сходимостью в том смысле, что решение системы (6) может быть получено лишь от удачно выбранных начальных приближений, найти которые в многомерном случае гораздо сложнее, чем в одномерном. Существующие модификации метода (квазиньютоновские алгоритмы) во многом устраняют перечисленные недостатки. В них есть возможность применения как рассмотренной выше ньютоновской стратегии, так и некоторой глобальной стратегии, позволяющей, во-первых, работать с плохо обусловленными матрицами Якоби и, вовторых, решать проблему глобальной сходимости, т. е. обеспечивать сходимость к некоторому решению из произвольной начальной точки. С различными вариантами квазиньютоновских стратегий можно познакомиться, обратившись к книге: Дэннис Дж., Шнабель Р. Численные методы безусловной оптимизации и решения нелинейных уравнений. М.: Мир, 1988. Программная реализация квазиньютоновских алгоритмов решения систем нелинейных уравнений осуществлена в математических пакетах MathCAD, MathLab. Неплохо представлены указанные алгоритмы в математической библиотеке IMSL фирмы Visual Numerics, Inc., являющейся неотъемлемой частью профессиональных версий Fortran PowerStation и Compaq Visual Fortran. Использованная литература 1. О.Н. Кассандрова, В.В. Лебедев. Обработка результатов наблюдений. М.: Наука, 1970. 2. Н.С.Бахвалов. Численные методы. М.: Наука, 1979. 3. О.В. Бартеньев Фортран для профессионалов. Математическая библиотека IMSL. Ч. 1 – 3. М.: Диалог-МИФИ, 2001.