Архипова Н.Г. Вычисление N-радиусов и расстояний между

advertisement
Министерство образования и науки Российской Федерации
Федеральное государственное автономное образовательное учреждение
высшего профессионального образования
"Казанский (Приволжский) федеральный университет"
ИНСТИТУТ МАТЕМАТИКИ И МЕХАНИКИ ИМ. Н.И. ЛОБАЧЕВСКОГО
КАФЕДРА ГЕОМЕТРИИ
Направление: 010100.68 - математика
ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА
(МАГИСТЕРСКАЯ ДИССЕРТАЦИЯ)
"Вычисление N -радиусов и расстояний между конечными множествами в
евклидовом пространстве с помощью пакета Maxima"
Работа завершена:
" "
2014г.
(Н.Г.Архипова)
Работа допущена к защите:
Научный руководитель
доктор физ.-мат. наук, доцент
" "
2014г.
(Е.Н.Сосов)
Заведующий кафедрой:
док.физ.- мат. наук, профессор
" "
2014г.
(В.В.Шурыгин)
Казань – 2014
Содержание
1 Введение
3
2 Основные понятия и обозначения
4
3 Нахождение относительных N -радиусов конечных множеств в R3
6
4 Нахождение расстояния между конечными множествами в R
12
5 Нахождение чебышевского центра в R2
16
6 Вычисление расстояния между конечными множествами в R2
21
7 Заключение
24
8 Литература
25
2
1
Введение
В своей работе будем использовать пакет Maxima, для решения геометрических задач. Научимся вычислять N -радиусы конечных множеств в R3 , находить чебышевский центр и вычислять чебышевский радиус для данного конечного множества в R2 с помощью пакета Maxima.
N -радиусы являются метрическими инвариантами метрического пространства, их вычисление важно для классификации конечных метрических пространств, также для установления
апроксимативных свойств компактных множеств, в частности, конечных множеств на евклидовом пространстве.
Maxima — это система компьютерной математики, которая предназначена для выполнения
математических расчетов (как в символьном, так и в численном виде) таких как:
- упрощение выражений;
- графическая визуализация вычислений;
- решение уравнений и их систем;
- решение обыкновенных дифференциальных уравнений и их систем;
- решение задач линейной алгебры;
- решение задач дифференциального и интегрального исчисления;
- решение задач теории чисел и комбинаторных уравнений и др.
Пакет Maxima состоит из интерпретатора макроязыка, написанного на Lisp, и нескольких
поколений пакетов расширений, написанных на макроязыке пакета или непосредственно на
Lisp. В системе имеется большое количество встроенных команд и функций, а также возможность создавать новые функции пользователя. Система имеет собственный язык, а также встроенный язык программирования высокого уровня, что говорит о возможности решения новых
задач и возможности создания отдельных модулей и подключения их к системе для решения
определенного круга задач.
Основными преимуществами программы Maxima являются возможность свободного использования, небольшой размер программы, широкий класс решаемых задач, интерфейс программы
на русском языке.
3
2
Основные понятия и обозначения
Рассмотрим метрическое пространство (X, ρ).
Пусть B(X) — множество всех непустых ограниченных множеств пространства X .
Введем следующие понятия:
1. Расстояние от точки до множества
|xM | = inf{|xy| : y ∈ M },
где x ∈ X, ∅ =
6 M ⊂ X.
Пусть M ∈ B(X), W — непустое подмножество в X .
2. Величина
β(M, W ) = sup{|xW | : x ∈ M }
называется отклонением множества M от W .
3. Псевдометрикой Хаусдорфа на множестве B(X) называется функция
α : B(X) × B(X) −→ R+ , α(M, W ) = max{β(M, W ), β(W, M )}.
ΣN (X) — множество всех непустых подмножеств в X, состоящих не более чем из N точек.
4. Относительным N -радиусом множества M относительно множества W называется величина
RN W (M ) = inf{β(M, S) : S ∈ ΣN (W )}.
5. Относительным чебышевским радиусом множества M относительно множества W называется величина
RW (M ) = inf{β(M, x) : x ∈ W }.
6. Чебышевским центром ограниченного множества M называется центр шара наименьшего
радиуса, содержащего данное множество.
7. Множество всех относительных чебышевских центров множества M
cheb(M ) = {x ∈ M : β(M, x) = RM (M )}.
4
Рассмотрим необходимые свойства отклонения и псевдометрики Хаусдорфа
Пусть M, H ∈ B(X), ∅ =
6 W ⊂ X.
1. β(M, W ) ≤ β(M, H) + β(H, W ).
Доказательство. Для каждого ε > 0 для любого y ∈ M найдется такое z ∈ H, что
|yz| ≤ |yH| + ε.
Тогда
|yW | ≤ |yz| + |zW | ≤ |yz| + β(H, W ) ≤
|yH| + ε + β(H, W ) ≤ β(M, H) + β(H, W ) + ε.
Переходя в полученном неравенстве к пределу при ε −→ 0, получим
|yW | ≤ β(M, H) + β(H, W ).
Осталось взять верхнюю грань в левой части последнего неравенства.
2. β(M, H) = inf{r : M ⊂ B(H, r)}, где B(H, r) = ∪{B(x, r) : x ∈ H} — обобщенный шар.
Пусть M, W ∈ B(X).
3. α — метрика на множестве B[X].
Доказательство можно найти в книге [1].
4. α(M, W ) = inf{r : M ⊂ B(W, r), W ⊂ B(M, r)}.
Приведем известные теоремы.
Теорема 1. Если пространство (X, ρ) — полное, то пространство (B[X], α) — полное.
Теорема 2. (Бляшке) Если пространство (X, ρ) — компактное, то пространство
(B[X], α) — компактное.
5
3
Нахождение относительных N -радиусов конечных
множеств в R3
Постановка задачи:
Пусть X = R3 .
M — непустое конечное множество в X мощности m = card(M ).
W — непустое конечное множество в X мощности k = card(W ).
Необходимо написать программу для нахождения N -радиусов:
RN W (M ) = min{β(M, S) : S ∈ ΣN (W )}.
Схематично опишем алгоритм решения:
1. Зададим множества M = {x1 , ..., xN }, W = {y1 , ..., yN }. Список элементов множества
зададим с помощью функции genmatrix пакета Maxima.
2. Составим матрицу расстояний между элементами множеств M и W .
p
h[i, j] := (y[i, 1] − x[j, 1])2 + (y[i, 2] − x[j, 2])2 + (y[i, 3] − x[j, 3])2 .
3. Для нахождения относительного чебышевского радиуса R1W (M ) находим максимумы в
каждой строке матрицы и заносим эти элементы в один список. Затем выбираем минимальный
элемент из полученного списка. Это есть относительный 1-радиус R1W (M ).
4. Для нахождения относительного 2-радиуса, рассматриваем S, как множество, состоящее
из двух элементов, которые могут совпадать.
Пусть, например, S = {y1 , y2 }. Тогда найдем
β(M, S) = max{|xS| : x ∈ M } = max{min{|xy| : y ∈ S}, x ∈ M } =
max{min{|xy| : y ∈ {y1 , y2 }}, x ∈ M } =
max{min{|x1 y1 |, |x1 y2 |}, min{|x2 y1 |, |x2 y2 |}, ..., min{|xm y1 |, |xm y2 |}}.
Аналогично вычисляем отклонения множества M от S, когда S пробегает множество всех
остальных двухточечных подмножеств множества W, и заносим их в список. Находим минимальное число из полученного списка. Это есть относительный 2-радиус R2W (M ).
5. Для нахождения относительного 3-радиуса, рассматриваем S, как множество, состоящее
из трех элементов, которые могут попарно совпадать.
Пусть, например, S = {y1 , y2 , y3 }. Находим
β(M, S) = max{|xS| : x ∈ M } = max{min{|xy| : y ∈ S}, x ∈ M } =
max{min{|xy| : y ∈ {y1 , y2 , y3 }}, x ∈ M } =
max{min{|x1 y1 |, |x1 y2 |, |x1 y3 |}, min{|x2 y1 |, |x2 y2 |, |x2 y3 |}, ..., min{|xm y1 |, |xm y2 |, |xm y3 |}}.
Аналогично вычисляем отклонения множества M от S, когда S пробегает множество всех
остальных трехточечных подмножеств множества W, и заносим их в список. Находим минимальное число из полученного списка. Это есть относительный 3-радиус R3W (M ).
6
Код программы в пакете Maxima-5.31.2
7
Вывод программы в пакете Maxima-5.31.2
8
9
10
Пример программы
11
4
Нахождение расстояния между конечными
множествами в R
Постановка задачи:
Пусть X = R.
M — непустое конечное множество в X мощности m = card(M ),
W — непустое конечное множество в X мощности k = card(W ).
Необходимо написать программу для нахождения относительного чебышевского центра, а
также двух расстояний между этими множествами:
d1 (M, W ), dα (M, W ).
Схематично опишем алгоритм решения:
Пусть даны два множества M = {x1 , ..., xN } и W = {y1 , ..., yN }.
Вычислим:
1) максимальное расстояние, для этого находим максимальное и минимальное значение x
множества M, обозначим их из через xM и xm , соответственно;
m
.
2) середину xc = xM +x
2
c = {x1 − xc , ..., xN − xc }. Проделываем тоже самое и
Сдвинем множество M на xc влево, M
для множества W .
Найдем такие
p величины как:
2
c
c
c
d(M , W ) = (xb1 − yb1 )2 + ... + (xc
N −y
N) ;
c, W
c ) = max{β(M
c, W
c ), β(W
c, M
c)}, а также d(−M
c, W
c ), α(−M
c, W
c ),
α(M
c = {−(x1 − xc ), ..., −(xN − xc )};
где −M
c, W
c ), d(M
c, W
c )};
d1 (M, W ) = min{d(−M
c, W
c ), α(M
c, W
c )}.
dα (M, W ) = min{α(−M
Причем, d1 — метрика, а dα (M, W ) — расстояние, которое приближает значение метрики,
см. [1] стр. 87.
12
Код программы в пакете Maxima-5.31.2
13
14
15
5
Нахождение чебышевского центра в R2
Пусть X = R2 .
M — непустое конечное множество в X мощности m = card(M ).
Схематично опишем алгоритм решения:
1. Зададим множество M = {x1 , ..., xm }.
2. Найдем диаметр множества
D(M ) = max{|xi xj | : i = 1, m, j = i + 1, m},
p
где |xi xj | = (xi1 − xj1 )2 + (xi2 − xj2 )2 .
3. Найдем середину xc некоторой пары диаметральных точек (т.е. расстояние между которыми равно диаметру).
)
для любого i ∈ {1, ..., m}, то xc — чебышевский центр множества M .
4. Если |xc xi | ≤ D(M
2
Если нет, то перебираем все остроугольные треугольники (точнее тройки их вершин). Используем следующую характеризацию остроугольного треугольника. У такого треугольника
квадрат большей стороны меньше суммы квадратов двух других сторон.
5. Вычислим
|xi xj | ∗ |xi xk | ∗ |xj xk |
R∆ =
4 ∗ S∆
для каждого остроугольного треугольника. Занесем эти числа в список.
6. Найдем максимальный элемент этого списка и запомним вершины, по крайней мере,
какого-либо одного треугольника, соответствующего этому максимальному элементу.
7. Найдем центр описанной окружности вокруг найденного в предыдущем пункте треугольника. Это и есть чебышевский центр cheb(M ) множества M.
16
Код программы в пакете Maxima-5.31.2
17
18
19
Вывод программы в пакете Maxima-5.31.2
20
6
Вычисление расстояния между конечными
множествами в R2
Пусть даны множества M , W . С помощью предыдущего алгоритма находим cheb(M ),
cheb(W ).
Опишем алгоритм нахождения расстояния между конечными множествами M , W из R2 :
1. Перенесем чебышевские центры множеств M и W в начало координат. Для этого делаем
следующее:
M1 = M − cheb(M ) (разность Минковского в R2 ),
W1 = W − cheb(W ).
Следовательно, cheb(M1 ) = cheb(W1 ) = (0, 0).
, где
2. Осуществим повороты множества M вокруг начала координат на углы ϕl = 2πl
L
l = 0, L − 1, L ∈ N.
Таким образом, получим
M1 (ϕl ) = {(xi cos ϕl − yi sin ϕl , xi sin ϕl + yi cos ϕl ) : i = 1, cardM1 }.
3. Вычислим следующие величины
α̃(M1 , W1 ) = min{α(M1 (ϕl ), W1 ) : l = 0, L − 1}, L ∈ N.
α̂(M1 , W1 ) = min{α(M1 (ϕl ), Ŵ1 ) : l = 0, L − 1}, где
Ŵ1 = {(−xi , yi ) : i = 1, cardW } - отражение множества W1 относительно оси ординат.
α∗ (M, W ) = min{α̃, α̂}.
4. α∗ (M, W ) — приближенное расстояние между множествами M , W с индуцированной
метрикой в метрическом пространстве. См. [1] стр. 87.
21
Приведем код программы как добавление к коду программы на странице 17
22
23
7
Заключение
В магистерской диссертации решены следующие задачи:
1. Написаны программы на встроенном языке пакета Maxima для вычисления N -радиусов
конечных множеств в R3 , N = 1, 2, 3.
2. Написаны программы, с помощью которых можно найти чебышевский центр для данного
конечного множества в R2 , вычислить его чебышевский радиус, а также такие величины как:
α̃ = min{α(M1 (ϕl ), W1 ) : l = 0, L − 1}, где
M1 = M − cheb(M ) (разность Минковского в R2 ), W1 = W − cheb(W ), L ∈ N,
M1 (ϕl ) = {(xi cos ϕl − yi sin ϕl , xi sin ϕl + yi cos ϕl ) : i = 1, cardM1 },
ϕl = 2πl
.
L
α̂ = min{α(M1 (ϕl ), Ŵ1 ) : l = 0, L − 1}, где Ŵ1 = {(−xi , yi ) : i = 1, cardW }.
α∗ = min{α̃, α̂}.
С помощью данных программ можно также найти приближенное расстояние между компактными множествами и вычислить их N -радиусы в евклидовом пространстве.
Отметим, что пакет Maxima не слишком сложен в применении, он упрощает различного рода
вычисления. Система компьютерной математики Maxima относится к системам символьной
математики. Поэтому (по умолчанию) система выдает результат в символьном виде. То есть,
если не задавать специальную команду, система не представит полученные в ходе вычислений
результаты в виде рационального приближения вещественного числа.
24
8
Литература
1. Бураго Д.Ю., Бураго Ю.Д., Иванов С.В. Курс метрической геометрии. - М.: Ижевск:
Ин-т комп. исслед., 2004. - 496 с.
2. Сосов Е.Н. Относительный N -радиус ограниченного множества метрического пространства // Изв. вузов. Матем. - 2010. - №4. - С. 66-72.
3. Чичкарёв Е.А. Компьютерная математика с Maxima: Руководство для школьников и
студентов. - М. : ALT Linux, 2012. - 384 с.
4. Heinz H.Bauschke, Mason S.Macklem, Xianfu Wang. Chebyshev Sets, Klee Sets, and Chebyshev
Centers with respect to Bregman Distances: recent results and open problems. - 2010.
25
Download