В математике , особенно в линейной алгебре и численном анализе , процесс Грама – Шмидта - это метод ортонормирования набора векторов во внутреннем пространстве произведения , чаще всего в евклидовом пространстве R n, снабженном стандартным внутренним произведением . Процесс Гр-Шмидт принимает конечен , линейно независимые множества векторов S = { v 1 , ..., v K } для к ≤ пи генерирует ортогональный набор S ' = { U 1 , ..., U K } , что пролеты то же к - мерное подпространство R п , как S .
Метод назван в честь Йоргена Педерсена Грама и Эрхарда Шмидта , но Пьер-Симон Лаплас был знаком с ним еще до Грама и Шмидта. [1] В теории разложений групп Ли оно обобщается разложением Ивасавы .
Применение процесса Грама – Шмидта к векторам-столбцам матрицы полного столбца рангов дает QR-разложение (оно разлагается на ортогональную и треугольную матрицу ).
Процесс Грама – Шмидта [ править ]
Определим оператор проекции как
где обозначает скалярное произведение векторов u и v . Этот оператор проецирует вектор v ортогонально на линию, натянутую на вектор u . Если u = 0 , мы определяем , т. Е. Карта проекции является нулевой картой, отправляя каждый вектор в нулевой вектор.
Тогда процесс Грама – Шмидта работает следующим образом:
Последовательность у 1 , ..., у к является искомой системой ортогональных векторов, а нормализованные векторы х 1 , ..., е к образуют орто нормальный набор. Вычисление последовательности u 1 ,…, u k известно как ортогонализация Грама – Шмидта , а вычисление последовательности e 1 ,…, e k известно как ортонормировка Грама – Шмидта, поскольку векторы нормализованы.
Чтобы проверить, что эти формулы дают ортогональную последовательность, сначала вычислите , подставив приведенную выше формулу для u 2 : мы получаем ноль. Затем используйте это для вычисления снова, подставив формулу для u 3 : мы получаем ноль. Общее доказательство проводится по математической индукции .
Геометрически этот метод действует следующим образом: для вычисления u i он ортогонально проецирует v i на подпространство U, порожденное u 1 ,…, u i −1 , которое совпадает с подпространством, порожденным v 1 ,…, v i −1 . Вектор U я затем определяется как разница между V я и эта проекция, гарантированно ортогональна все векторы в подпространстве U .
Процесс Грама – Шмидта также применим к линейно независимой счетно бесконечной последовательности { v i } i . Результатом является ортогональная (или ортонормированная) последовательность { u i } i такая, что для натурального числа n : алгебраическая оболочка v 1 ,…, v n такая же, как у u 1 ,…, u n .
Если процесс Грама – Шмидта применяется к линейно зависимой последовательности, он выводит вектор 0 на i- м шаге, предполагая, что v i является линейной комбинацией v 1 ,…, v i −1 . Если должен быть создан ортонормированный базис, то алгоритм должен проверить наличие нулевых векторов в выходных данных и отбросить их, потому что никакое число, кратное нулевому вектору, не может иметь длину 1. Число векторов, выводимых алгоритмом, будет тогда измерением. пространства, занимаемого исходными входами.
Вариант процесса Грама-Шмидта с использованием трансфинитную рекурсии применяется к (возможно , несчетное) бесконечной последовательности векторов дает набор ортогональных векторов с таким образом, что для любого , то завершение в промежуток такой же , как и у . В частности, когда он применяется к (алгебраическому) базису гильбертова пространства (или, в более общем смысле, базису любого плотного подпространства), он дает (функционально-аналитический) ортонормированный базис. Обратите внимание, что в общем случае часто выполняется строгое неравенство , даже если начальное множество было линейно независимым, и промежуток не обязательно должен быть подпространством промежутка (скорее, это подпространство его завершения).
Пример [ править ]
Евклидово пространство [ править ]
Рассмотрим следующий набор векторов в R 2 (с обычным внутренним произведением )
Теперь выполните Грама – Шмидта, чтобы получить ортогональный набор векторов:
Проверяем, что векторы u 1 и u 2 действительно ортогональны:
отмечая, что если скалярное произведение двух векторов равно 0, то они ортогональны.
Для ненулевых векторов мы можем затем нормализовать векторы, разделив их размеры, как показано выше:
Свойства [ править ]
Обозначим через результат применения процесса Грама – Шмидта к набору векторов . Это дает карту .
Обладает следующими свойствами:
- Это непрерывно
- Это сохраняет ориентацию в том смысле, что .
- Он коммутирует с ортогональными отображениями:
Позвольте быть ортогональным (по отношению к данному внутреннему продукту). Тогда у нас есть
Далее параметризованная версия процесса Грама – Шмидта дает (сильную) деформационную ретракцию общей линейной группы на ортогональную группу .
Числовая стабильность [ править ]
Когда этот процесс реализуется на компьютере, векторы часто не совсем ортогональны из-за ошибок округления . Для процесса Грама – Шмидта, описанного выше (иногда называемого «классическим Грамом – Шмидтом»), эта потеря ортогональности особенно велика; поэтому говорят, что (классический) процесс Грама – Шмидта численно нестабилен .
Процесс Грама – Шмидта можно стабилизировать с помощью небольшой модификации; эту версию иногда называют модифицированной версией Грама-Шмидта или MGS. Этот подход дает тот же результат, что и исходная формула в точной арифметике, и вносит меньшие ошибки в арифметику конечной точности. Вместо вычисления вектора u k как
он вычисляется как
Этот метод используется в предыдущей анимации, когда промежуточный вектор v ' 3 используется при ортогонализации синего вектора v 3 .
Алгоритм [ править ]
Следующий алгоритм MATLAB реализует ортонормировку Грама – Шмидта для евклидовых векторов. Векторы v 1 ,…, v k (столбцы матрицы V
, так что V(:,j)
это j- й вектор) заменяются ортонормированными векторами (столбцами U
), которые охватывают то же подпространство.
функция [U] = грамшмидт ( В )[ n , k ] = размер ( V ); U = нули ( n , k ); U (:, 1 ) = V (:, 1 ) / norm ( V (:, 1 )); для i = 2 : k U (:, я ) = V (:, я ); для j = 1 : i - 1 U (:, i ) = U (:, i ) - ( U (:, j ) '* U (:, i ) ) / ( norm ( U (:, j ))) ^ 2 * U (:, j ); конец U (:, i ) = U (:, i ) / norm ( U (:, i )); конецконец
Стоимость этого алгоритма асимптотически составляет O ( nk 2 ) операций с плавающей запятой, где n - размерность векторов ( Голуб и Ван Лоан, 1996 , §5.2.8).
С помощью исключения Гаусса [ править ]
Если строки { v 1 ,…, v k } записаны как матрица , то применение исключения Гаусса к расширенной матрице даст ортогонализированные векторы вместо . Однако матрица должна быть приведена к форме эшелона строк , используя только строчную операцию добавления скалярного кратного одной строки к другой. [2] Например, как указано выше, мы имеем
И сокращение этого до формы эшелона строк дает
Нормализованные векторы тогда
как в примере выше.
Формула определения [ править ]
Результат процесса Грама – Шмидта может быть выражен в нерекурсивной формуле с использованием определителей .
где D 0 = 1, а для J ≥ 1, D J представляет собой определитель Грама
Обратите внимание, что выражение для u k является «формальным» определителем, т.е. матрица содержит как скаляры, так и векторы; значение этого выражения определяется как результат расширения кофактора по строке векторов.
Детерминантная формула для Грама-Шмидта в вычислительном отношении медленнее (экспоненциально медленнее), чем рекурсивные алгоритмы, описанные выше; это в основном теоретический интерес.
Альтернативы [ править ]
Другие алгоритмы ортогонализации используют преобразования Хаусхолдера или вращения Гивенса . Алгоритмы, использующие преобразования Хаусхолдера, более стабильны, чем стабилизированный процесс Грама – Шмидта. С другой стороны, процесс Грама – Шмидта создает th ортогонализированный вектор после th итерации, в то время как ортогонализация с использованием отражений Хаусхолдера дает все векторы только в конце. Это делает применимым только процесс Грама – Шмидта для итерационных методов, таких как итерация Арнольди .
Еще одна альтернатива мотивирована использованием разложения Холецкого для обращения матрицы нормальных уравнений в линейных наименьших квадратах . Позвольте быть матрица ранга полного столбца , столбцы которой необходимо ортогонализировать. Матрица является эрмитовой и положительно определен , поэтому она может быть записана в виде , используя разложение Холецкого . Нижнетреугольная матрица со строго положительными диагональными элементами обратима . Тогда столбцы матрицы являются ортонормированными и охватывают то же подпространство в качестве столбцов исходной матрицы. Явное использование продукта делает алгоритм нестабильным, особенно если число условий продукта велико. Тем не менее, этот алгоритм используется на практике и реализован в некоторых программных комплексах из-за его высокой эффективности и простоты.
В квантовой механике существует несколько схем ортогонализации, характеристики которых лучше подходят для определенных приложений, чем оригинальные схемы Грама – Шмидта. Тем не менее, он остается популярным и эффективным алгоритмом даже для самых крупных расчетов электронной структуры. [3]
Ссылки [ править ]
- ^ Чейни, Уорд; Кинкейд, Дэвид (2009). Линейная алгебра: теория и приложения . Садбери, Ма: Джонс и Бартлетт. С. 544, 558. ISBN 978-0-7637-5020-6.
- ^ Пурселл, Лайл; Trimble, SY (1 января 1991 г.). "Ортогонализация Грама-Шмидта методом исключения Гаусса". Американский математический ежемесячник . 98 (6): 544–549. DOI : 10.2307 / 2324877 . JSTOR 2324877 .
- ^ Пурселл, Юкихиро; и другие. (2011). «Расчеты из первых принципов электронных состояний кремниевой нанопроволоки из 100 000 атомов на компьютере K». SC '11 Труды Международной конференции по высокопроизводительным вычислениям, сетям, хранению данных и анализу 2011 г .: 1: 1–1: 11. DOI : 10.1145 / 2063384.2063386 . ISBN 9781450307710. S2CID 14316074 .
Источники [ править ]
- Бау III, Давид; Трефетен, Ллойд Н. (1997), Численная линейная алгебра , Филадельфия: Общество промышленной и прикладной математики, ISBN 978-0-89871-361-9.
- Голуб, Джин Х .; Ван Лоан, Чарльз Ф. (1996), Matrix Computations (3-е изд.), Johns Hopkins, ISBN 978-0-8018-5414-9.
- Greub, Вернер (1975), Линейная алгебра (4-е изд.), Springer.
- Соливерез, CE; Гальяно, Э. (1985), "Ортонормализация на плоскости: геометрический подход" (PDF) , Mex. J. Phys. , 31 (4): 743–758.
Внешние ссылки [ править ]
- "Ортогонализация" , Математическая энциклопедия , EMS Press , 2001 [1994]
- Учебник по математике колледжа Харви Мадда по алгоритму Грама-Шмидта
- Самые ранние известные варианты использования некоторых слов математики: G В статье «Ортогонализация по Граму-Шмидту» содержится некоторая информация и ссылки на происхождение метода.
- Демонстрации: процесс Грама Шмидта на плоскости и процесс Грама Шмидта в пространстве
- Апплет ортогонализации Грама-Шмидта
- Ортогонализация NAG по Граму – Шмидту n векторов порядка m.
- Доказательство: Раймонд Пузио, Кинан Кидвелл. «Доказательство алгоритма ортогонализации Грама-Шмидта» (версия 8). PlanetMath.org.