Процесс Грама ― Шмидта

Материал из testwiki
Версия от 21:49, 8 мая 2024; 217.107.106.253 (обсуждение) (отмена правки 137672924 участника 217.107.106.253 (обс.))
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

Процесс ГрамаШмидта преобразует последовательность линейно независимых векторов 𝐚1,,𝐚n в ортонормированную систему векторов 𝐞1,,𝐞n, причём так, что каждый вектор 𝐞j есть линейная комбинация 𝐚1,,𝐚j.

Классический процесс Грама — Шмидта

Алгоритм

Пусть имеются линейно независимые векторы 𝐚1,,𝐚n и пусть 𝐩𝐫𝐨𝐣𝐛𝐚 — оператор проекции вектора 𝐚 на вектор 𝐛, определённый как

𝐩𝐫𝐨𝐣𝐛𝐚=𝐚,𝐛 𝐛,𝐛𝐛,

где 𝐚,𝐛 — скалярное произведение векторов 𝐚 и 𝐛.

Классический процесс Грама — Шмидта выполняется следующим образом:

𝐛1=𝐚1(1)𝐛2=𝐚2𝐩𝐫𝐨𝐣𝐛1𝐚2(2)𝐛3=𝐚3𝐩𝐫𝐨𝐣𝐛1𝐚3𝐩𝐫𝐨𝐣𝐛2𝐚3(3)𝐛n=𝐚n𝐩𝐫𝐨𝐣𝐛1𝐚n𝐩𝐫𝐨𝐣𝐛2𝐚n𝐩𝐫𝐨𝐣𝐛n1𝐚n(n)

На основе каждого вектора 𝐛j(j=1n) может быть получен нормированный вектор 𝐞j единичной длины, определённый как

𝐞j=𝐛j𝐛j

Результаты процесса Грама — Шмидта:

𝐛1,,𝐛n — система ортогональных векторов либо

𝐞1,,𝐞n — система ортонормированных векторов.

Вычисление 𝐛1,,𝐛n носит название ортогонализации Грама — Шмидта, а 𝐞1,,𝐞n — ортонормализации Грама — Шмидта.

Геометрическая интерпретация

Файл:Gram-Schmidt-step2.svg
Рис. 1. Второй шаг процесса Грама — Шмидта

Рассмотрим формулу (2) — второй шаг алгоритма. Её геометрическое представление изображено на рис. 1:

  1. получение проекции вектора 𝐚2 на 𝐛1;
  2. вычисление 𝐚2𝐩𝐫𝐨𝐣𝐛1𝐚2, то есть перпендикуляра, которым выполняется проецирование 𝐚2 на 𝐛1. Этот перпендикуляр — вычисляемый в формуле (2) вектор 𝐛2;
  3. перемещение полученного на шаге 2 вектора 𝐛2 в начало координат. Это перемещение сделано на рисунке лишь для наглядности;

На рисунке видно, что вектор 𝐛2 ортогонален вектору 𝐛1, так как 𝐛2 является перпендикуляром, по которому 𝐚2 проецируется на 𝐛1.

Рассмотрим формулу (3) — третий шаг алгоритма — в следующем варианте:

𝐛3=𝐚3(𝐩𝐫𝐨𝐣𝐛1𝐚3+𝐩𝐫𝐨𝐣𝐛2𝐚3)(6)

Её геометрическое представление изображено на рис. 2:

Файл:Gram-schmidt-step3base.svg
Рис. 2. Третий шаг процесса Грама — Шмидта
  1. получение проекции вектора 𝐚3 на 𝐛1;
  2. получение проекции вектора 𝐚3 на 𝐛2;
  3. вычисление суммы 𝐩𝐫𝐨𝐣𝐛1𝐚3+𝐩𝐫𝐨𝐣𝐛2𝐚3, то есть проекции вектора 𝐚3 на плоскость, образуемую векторами 𝐛1 и 𝐛2. Эта плоскость закрашена на рисунке серым цветом;
  4. вычисление 𝐚3(𝐩𝐫𝐨𝐣𝐛1𝐚3+𝐩𝐫𝐨𝐣𝐛2𝐚3), то есть перпендикуляра, которым выполняется проецирование 𝐚3 на плоскость, образуемую векторами 𝐛1 и 𝐛2. Этот перпендикуляр — вычисляемый в формуле (6) вектор 𝐛3;
  5. перемещение полученного 𝐛3 в начало координат. Это перемещение сделано на рисунке лишь для наглядности. Оно не является математическим действием и поэтому не отражается в формуле (6).

На рисунке видно, что вектор 𝐛3 ортогонален векторам 𝐛1 и 𝐛2, так как 𝐛3 является перпендикуляром, по которому 𝐚3 проецируется на плоскость, образуемую векторами 𝐛1 и 𝐛2.

Таким образом, в процессе Грама — Шмидта для вычисления 𝐛j выполняется проецирование 𝐚j ортогонально на гиперплоскость, натянутую на векторы 𝐛1,,𝐛j1. Вектор 𝐛j затем вычисляется как разность между 𝐚j и его проекцией. То есть 𝐛j — это перпендикуляр от 𝐚j к гиперплоскости, натянутой на векторы 𝐛1,,𝐛j1. Поэтому 𝐛j ортогонален векторам, образующим эту гиперплоскость.

Особые случаи

Процесс Грама — Шмидта может применяться также к бесконечной последовательности линейно независимых векторов.

Кроме того, процесс Грама — Шмидта может применяться к линейно зависимым векторам. В этом случае он выдаёт 𝟎 (нулевой вектор) на шаге j, если 𝐚j является линейной комбинацией векторов 𝐚1,,𝐚j1. Для сохранения ортогональности выходных векторов и для предотвращения деления на ноль при ортогонализации алгоритм должен отбрасывать нулевые векторы. Количество векторов, выдаваемых алгоритмом, будет равно размерности подпространства, порождённого векторами (то есть количеству линейно независимых векторов, которые можно выделить среди исходных векторов).

Свойства

  • Произведение длин 𝐛1,,𝐛j равно объёму параллелепипеда, построенного на векторах системы 𝐚1,,𝐚j как на рёбрах.

Дополнительные толкования

Процесс Грама ― Шмидта может быть истолкован как разложение невырожденной квадратной матрицы в произведение ортогональной (или унитарной в случае эрмитова пространства) и верхнетреугольной матрицы с положительными диагональными элементами ― QR-разложение, что является частным случаем разложения ИвасавыШаблон:Нет АИ.

Литература

Ссылки


Шаблон:Rq