Алгоритм перехода к новому координатному базису в многомерном пространстве.

Для аппроксимации информационных множеств прямоугольными параллелепипедами используются алгоритмы перехода от одного базиса к другому [Изв. АН СССР. Техн. кибернет., 1983, №2, с. 94-102]. Поскольку аппроксимация прямоугольными параллелепипедами является основой алгоритма последовательного визуального решения задач математического программирования рассмотрим этот вопрос подробнее.

Пусть в пространстве Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru имеются два базиса: старый Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru и новый Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru . Каждый из векторов нового базиса можно выразить в виде линейной комбинации векторов старого базиса [Высшая математика для экономистов: Учебник для вузов / Н.Ш. Кремер и др. М.: ЮНИТИ, 2001. – 471с.]:

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru (1)

Полученная система означает, что переход от старого базиса Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru к новому Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru задается матрицей перехода Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru и т.д.

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru ,

причем коэффициенты разложения новых базисных векторов по старому базису образуют столбцы этой матрицы.

Матрица Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru – неособенная, так как в противном случае ее столбцы (а следовательно, и базисные векторы) оказались бы линейно зависимыми. Обратный переход от нового базиса Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru к старому базису Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru осуществляется с помощью обратной матрицы Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru .

Найдем зависимость между координатами вектора в разных базисах. Пусть рассматриваемый вектор Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru имеет координаты Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru относительно старого базиса и координаты Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru относительно нового базиса, т.е.

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru . (2)

Подставив значения Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru из системы (1) в левую часть равенства (2), получим после преобразований:

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru

т.е. в матричной форме

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru или Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru . (3)

Пример. В базисе Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru заданы вектора Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru , Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru и Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru . Вектор Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru , заданный в базисе Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru , выразить в базисе Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru .

Решение. Выразим связь между базисами:

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru

Матрица перехода от базиса Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru к базису Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru имеет вид

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru .

Вычисляем Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru . Рассмотрим получение обратной матрицы Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru для матрицы Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru :

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru ,

где Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru – определитель исходной матрицы Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru , Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru - определитель матрицы, полученной из матрицы Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru , вычеркиванием Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru – строки и Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru – столбца.

Теперь по (3)

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru ,

т.е. новые координаты вектора Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru в базисе Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru есть 0,5; 2 и –0,5 и вектор Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru может быть представлен в виде:

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru .

Для некоторых функций остановка (или большое количество итераций) по методу Гаусса-Зайделя может произойти при наличии «оврагов». Тогда применяютовражный метод минимизации с помощью метода Гаусса-Зайделя (метод минимизации при наличии оврагов)

В овражном методе производится минимизация функции при различных начальных условиях. Оптимальные точки Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru и Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru определяют новое направление минимизации. Движение осуществляется к точке Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru c наименьшим значением функции.

Формирование движения по прямой в многомерном пространстве:

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru

Рис. 2.

Точка 1: Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru . Точка 2: Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru .

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru

Алгоритм преобразования фигуры в плоскостных координатах

Пусть M - произвольная точка на плоскости с координатами Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru и Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru , вычисленными относительно заданной прямолинейной координатной системы. Однородными координатами этой точки называется любая тройка одновременно не равных нулю чисел Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru связанных с заданными числами Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru и Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru следующими соотношениями:

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru

Рис. 6. Преобразование координат точки на плоскости в однородные координаты

При решении задач компьютерной графики однородные координаты обычно вводятся так: произвольной точке Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru на плоскости ставится в соответствие точка Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru в пространстве (рис. 6).

Заметим, что производная точка на прямой, соединяющей начало координат, точку Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru , с точкой Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru , может быть задана тройкой чисел вида Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru . Будем считать, что Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru неравно 0.

Вектор с координатами Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru является направляющим вектором прямой, соединяющей точки Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru и Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru . Эта прямая пересекает плоскость Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru в точке Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru , которая однозначно определяет точку Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru координатной плоскости Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru .

Тем самым между произвольной точкой с координатами Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru и множеством троек чисел вида Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru , при Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru неравной 0, устанавливается (взаимно однозначное) соответствие, позволяющее считать числа Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru новыми координатами этой точки.

В проективной геометрии для однородных координат принято следующее обозначение: Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru или, более обще, Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru (напомним, что здесь непременно требуется, чтобы числа Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru одновременно в нуль не обращались).

Применение однородных координат оказывается удобным уже при решении простейших задач.

Рассмотрим, например, вопросы, связанные с изменением масштаба. Если устройство отображения работает только с целыми числами (или если необходимо работать только с целыми числами), то для произвольного значения Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru (например, Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru ) точку с однородными координатами Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru представить нельзя. Однако при разумном выборе Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru можно добиться того, чтобы координаты этой точки были целыми числами. В частности, при Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru для рассматриваемого примера имеем Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru .

Рассмотрим другой случай. Чтобы результаты преобразования не приводили к арифметическому переполнению, для точки с координатами Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru можно взять, например, Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru . В результате получим Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru .

Приведенные примеры показывают полезность использования однородных координат при проведении расчетов. Однако основной целью введения однородных координат в компьютерной графике является их несомненное удобство в применении к геометрическим преобразованиям.

При помощи троек однородных координат и матриц третьего порядка можно описать любое аффинное преобразование плоскости.

В самом деле, считая Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru , сравним две записи: помеченную символом * и нижеследующую, матричную:

Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru .

Нетрудно заметить, что после перемножения выражений, стоящих в правой части последнего соотношения, мы получим обе формулы (*) и верное числовое равенство Алгоритм перехода к новому координатному базису в многомерном пространстве. - student2.ru .

Тем самым сравниваемые записи можно считать равносильными.

Элементы произвольной матрицы аффинного преобразования не несут в себе явно выраженного геометрического смысла. Поэтому чтобы реализовать то или иное отображение, т.е. найти элементы соответствующей матрицы по заданному геометрическому описанию, необходимы специальные приемы. Обычно построение этой матрицы в соответствии со сложностью рассматриваемой задачи и с описанными выше частными случаями разбивают на несколько этапов.

На каждом этапе ищется матрица, соответствующая тому или иному из выделенных выше случаев А, Б, В и Г, обладающих хорошо выраженными геометрическими свойствами.

Выпишем соответствующие матрицы третьего порядка.

Наши рекомендации