Каталог >> ИИ >> Новые свойства алгоритма исключения Гаусса и их применение для построения ньютоновских методов минимизации |
СВОЙСТВА АЛГОРИТМА ИСКЛЮЧЕНИЯ ГАУССА И ИХ ПРИМЕНЕНИЕ ДЛЯ ПОСТРОЕНИЯ НЬЮТОНОВСКИХ МЕТОДОВ МИНИМИЗАЦИИ А.Б. Хакимова, М.В. Свириденко Puma_home@mail.ru, MihaGod@mail.ru Содержание В статье излагаются: применение новых свойств алгоритма исключения Гаусса для построения направления спуска в ньютоновских методах минимизации; формирования подхода к минимизации псевдобулевых функций; формирование подхода для прогнозирования цен на товары, услуги и т.д. Приводится теоретическое и экспериментальное сравнение эффективности алгоритмов. Приведено обоснование, что построение направления спуска и псевдобулевое программирование, как и линейное, является частью линейной алгебры. В статье описываются новые свойства метода исключения Гаусса {Появление новых свойств метода исключения Гаусса отображаются как на развитии линейной алгебры, так и на построении новых алгоритмов математического программирования} и их применение для одновременного конструктивного построения {Описывает алгоритм построения по шагам}: · значения минимума квадратичной функции ![]() · координат ![]() · аппроксимации ![]() ![]() · преобразования координат для приведения ![]() Настоящая работа содержит следующие основные результаты, как по теории линейной алгебры, так и по построению алгоритмов математического программирования: (i) Решение системы ![]() ![]() ![]() ![]() ![]() ![]() элементы ![]() ![]() ![]() ![]() ![]() полагая ![]() Здесь ![]() (ii) В процессе построения эквивалентной задачи методом исключения Гаусса в прямом порядке, перечисленные соотношения представляют всю необходимую информацию для аппроксимации матрицы ![]() (iii) В процессе исключения Гаусса в обратном порядке приходим к построению новой эквивалентной задачи ![]() ![]() Здесь ![]() ![]() ![]() ![]() (iv) Эквивалентная задача достаточно проста и допускает усложнения для дальнейшего применения в линейной алгебре и математическом программировании. Рассмотрим, например, задачу, относящуюся к минимизации квадратичных функций на множестве булевых переменных. В этом случае эквивалентную задачу можно переписать в виде ![]() ![]() Очевидно, что только вершины многогранника, образованного ограничениями, формируют допустимое множество решений поставленной задачи. Отсюда следует, что оптимальное решение можно получить методом линейного программирования, а это означает, что псевдобулевое программирование (минимизация параболических функций {Псевдобулевую функцию можно определить как отображение ![]() Можно выделить еще одну задачу, в которой используются ньютоновские методы минимизации, и, которая представляет практический интерес не только для предприятия, но и для нашего края. Это прогнозирование изменения цен на услуги, товары и так далее. Подход разработан в группе компаний «БЕРДЪ» г. Новороссийска и является естественным продолжением работы авторов [2]. Динамическая характеристика рынка недвижимости, включая задержку до начала реакции, имеет слишком большой разброс, чтобы моделировать поведение рынка с использованием обычной теории нелинейного регрессионного анализа. В данной работе рынок представлен физической динамической системой, которую можно считать неизвестным черным ящиком, имеющим один или более входов и выходов. На входы неизвестной системы и адаптивного фильтра подается один и тот же сигнал. Фильтр настраивается таким образом, чтобы его выходной сигнал соответствовал выходному сигналу неизвестной системы по критерию наилучшего среднеквадратического приближения. Близкое или вероятно полное приближение возможно тогда, когда адаптивная система имеет достаточное количество перестраиваемых весовых коэффициентов. Если входные сигналы изменяются в широком диапазоне и адаптивная система такова, что при подходящем выборе ее перестраиваемых параметров возможно такое моделирование, то процесс адаптации, минимизирующий среднеквадратическую ошибку, приводит к точному моделированию ее параметров. Изложение материала начнем с того, что в процессе исключения Гаусса в прямом порядке порождаются такие матрицы ![]() ![]() ![]() ![]() ![]() ![]() или, что то же самое, ![]() ![]() Легко видеть, что два последних соотношения позволяют с помощью элементарных арифметических операций поочерёдно вычислить строки матриц ![]() ![]() ![]() ![]() ![]() ![]() ![]() Напомним, что реализация одного шага ньютоновского метода условной или безусловной минимизации состоит из двух или трёх этапов {Представленная ниже схема описана Зойтендейком в 1970 году под названием метода «возможных направлений»}. На первом выбирается направление спуска. На втором определяется длина шага по выбранному направлению и новая точка. Третий этап, которого может не быть в конкретных алгоритмах, сводится к обработке информации, полученной в результате реализации первых двух этапов, для уточнения вспомогательных характеристик задачи, например оценок производных минимизируемой функции. Основной алгоритм численной линейной алгебры {Метод исключения Гаусса с частичным выбором ведущего элемента}, в дальнейшем метод исключения Гаусса (МИГ), представляет всю необходимую информацию для выбора направления спуска {См. работу авторов [3]} . От сюда следует, что для определения направления спуска средствами МИГ достаточно продолжить его построение, включая в его состав дополнительные блоки, например модели алгоритмов аппроксимации матрицы вторых производных {Матрица Гесса, в некоторых источниках Гессе} существенно положительно определённой матрицей, масштабирования при спуске, поиска направления отрицательной кривизны, учёта линейных ограничений, диагонализации матрицы вторых производных и т. д. Разработка дополнительных блоков связана с решением неравенств, поэтому продолжение построения МИГ переводит его на стык областей линейной алгебры (ЛА) и анализа. ЛА, в отличие от анализа, связана с решением уравнений и не имеет дела с неравенствами. Ньютоновские методы минимизации, как и линейное программирование, представляют собой контрпример: они связаны с неравенствами, но, безусловно, являются частью ЛА. Начнём с ньютоновских методов безусловной минимизации, в которых направление спуска ![]() (1) ![]() ![]() где ![]() ![]() ![]() ![]() ![]() (2) ![]() Перейдём в процессе исключения Гаусса в прямом порядке от (2) к эквивалентной системе (3) ![]() и, в процессе обратной подстановки, получим решение системы (1). Существенная положительная определённость матрицы ![]() ![]() Авторами доказано следующее утверждение [3]. Пусть матрица ![]() ![]() (4) ![]() (5) ![]() элементы ![]() ![]() (6) ![]() (7) ![]() (8) ![]() полагая ![]() Соотношения (6)-(8) представляют всю необходимую информацию для аппроксимации матрицы ![]() Следствие 1. Минимальное значение квадратичной функции ![]() (9) ![]() Следствие 2. Для определения направления спуска достаточно получить решение системы (5), полагая ![]() Следствие 3. для аппроксимации матрицы ![]() ![]() ![]() ![]() (10) ![]() ![]() ![]() ![]() где параметр ![]() ![]() ![]() ![]() ![]() Для доказательства численной устойчивости необходимо и достаточно доказать, что правило (10) гарантирует, что величины элементов ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Предлагается следующий способ масштабирования шагов при спуске путём усложнения правила аппроксимации (10) ![]() ![]() ![]() если ![]() ![]() ![]() ![]() ![]() если ![]() ![]() Экспериментальное сравнение эффективности правил аппроксимации показало, что учёт ![]() Предлагается следующий способ построения отрицательной кривизны. Пусть ![]() ![]() Теперь рассмотрим определение направления спуска на множестве линейных ограничений. Начнём с процесса исключения Гаусса в обратном порядке для перехода от задачи (4)-(5) к эквивалентной задаче в ![]() (11) ![]() (12) ![]() Отметим следующие свойства преобразования переменных (12): 1. ![]() 2. Матрицы ![]() 3. ![]() 4. ![]() Подстановка (12) в ограничения приводит к задаче КП специального вида для поиска направления спуска. Из рекуррентных соотношений (3) - (5) и следствия 1 вытекает, что для расчёта спуска потребуется не более ![]() ![]() Всюду и далее ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ЗАДАЧА 1. ![]() ЗАДАЧА 2. ![]() ![]() ![]() ![]() ЗАДАЧА 3. ![]() ![]() В таблице 1 приводятся результаты вычислений с помощью четырёх версий предлагаемого ньютоновского алгоритма безусловной минимизации - MNB01, MNB02, MNB03, MNB04. MNB01, MNB03 - соответственно алгоритмы без и с альтернативным поиском направления спуска без масштабирования по первой переменной. MNB02, MNB04 - соответственно алгоритмы без и с альтернативным поиском направления спуска с масштабированием по первой переменной. Все версии алгоритмов написаны на языке VISUAL BASIC 6.0, точность вычислений - одинарная. В таблице 2 приведены результаты вычислений с помощью общеизвестных методов, описанных в монографии Поляка Б.Т. Таблица 1 Сравнение предлагаемого алгоритма для задач 1-3
Таблица 2 Сравнение общеизвестных методов для задач 1-3
1. Стренг Г. Линейная алгебра и ее применения. Перевод с английского Ю. А. Кузнецова и Д. М. Фаге; Под редакцией Г. И. Марчука. Издательство «Мир», Москва, 1980. Тираж 14000 экз. 2. Хакимов Б. Б., Маилян А. А., Маилян А. А., Хакимова А.Б. Патент на полезную модель №51252. Система для обработки данных и управления рынка. Зарегистрировано 27 января 2006. Москва. 3. Хакимова А.Б., Хакимов Б.Б. Единый подход к решению задач математического программирования гуманитарной компьютерной клиники. Материалы I международной конференции «Системные, информационные и технические средства и технологии в профессиональной деятельности, образовании, оздоровлении и профилактике». Санкт-Питербург. Издательство СПбГПУ, 2003. 4. Уидроу Б., Стирнз С. Адаптивная обработка сигналов. Перевод с английского Ю. К. Сальникова; Под редакцией В. В. Шахгильдяна. Издательство "Радио и связь". Москва. 1989 год. Тираж 10000экз. 5. Numerical methods for constrained optimization. Edited by P. E. Gill and W. Murrey. National Physical Laboratory Teddington, Middlesex. Academic Press London , New York , San Francisco . 1974 .
|