Skip Activities

Activities

Skip Search Forums

Search Forums

Skip Administration

Administration

Skip Course categories

Weekly outline

 
  • Новостной форум Forum
  • "Основы вычислительной геометрии"

    К.В. Вяткина,

    СПбГУ и СПбГУ ИТМО

    начало 26.09.09 в 10:00 ауд 311 ПОМИ

    Аннотация. Курс посвящен основным алгоритмам вычислительной геометрии, используемым в самых разных приложениях геометрии, в т.ч. c omputer vision , геоинформатика, биоинформатика, стереовидение и т.п.

    I. Введение: 2 ч.

    Предмет вычислительной геометрии. Используемая модель вычислений. Индивидуальные и массовые запросы. Сложность алгоритма: время ответа на запрос, затраты памяти, время на предварительную обработку. Многоугольники: простые, выпуклые, звездные. Ядро звездного многоугольника. Задача о принадлежности точки простому, выпуклому, звездному многоугольнику.

    II. Выпуклые оболочки: 4 ч.

    Определение выпуклой оболочки (ВО) множества точек на плоскости. Нижняя оценка сложности ее построения. Наивный алгоритм построения ВО множества точек на плоскости. Понятие общего положения. Вырожденные случаи. Понятие устойчивости алгоритма (robustness). Модифицированный метод Грэхема. Нижняя оценка сложности построения ВО множества точек на плоскости. Другие алгоритмы построения ВО множества точек на плоскости: метод обхода Грэхема; метод заворачивания подарка (метод Джарвиса) - алгоритм, чувствительный к выходу (output sensitive); инкрементный алгоритм; метод <<разделяй и властвуй>> (с предварительной сортировкой точек и без нее); <<быстрая оболочка>>; алгоритм Чена. Выбор наиболее подходящего алгоритма с учетом конкретной ситуации.

    III. Пересечение отрезков и наложение планарных подразбиений: 4 ч.

    Задача о нахождении всех пересечений отрезков из заданного множества. Нижняя оценка сложности: проверка наличия двух пересекающихся отрезков в заданном множестве. Нахождение пересечений отрезков методом плоского заметания. Реберный список с двойными связями (РСДС). Плоский прямолинейный граф (ППЛГ). Планарное подразбиение. Задача наложения (overlay) планарных подразбиений и алгоритм ее решения. Частные случаи: пересечение выпуклых многоугольников; пересечение простых многоугольников.

    IV. Триангуляция многоугольника: 4 ч.

    Диагональ простого многоугольника: определение и лемма о существовании. Триангуляция простого многоугольника: определение, лемма о существовании, сложность (количество треугольников в триангуляции). Наивный алгоритм построения триангуляции простого многоугольника. Граф, двойственный триангуляции: определение и свойства. Построение триангуляции простого многоугольника путем <<отрезания ушей>>. 3-раскрашиваемость графа триангуляции простого многоугольника. Задача о картинной галерее. Монотонные многоугольники. Разбиение простого многоугольника на y-монотонные. Построение триангуляции монотонного многоугольника. Триангуляция произвольных многоугольников и ППЛГ.

    V. Локализация точки на планарном подразбиении: 4 ч.

    Постановка задачи. Метод полос и оценка его сложности. Метод детализации триангуляции Киркпатрика и оценка его сложности. Трапецоидальная карта (trapezoidal map): определение, сложность, представление. Вероятностный алгоритм построения трапецоидальной карты. Оценка ожидаемого времени построения трапецоидальной карты, ожидаемого размера поисковой структуры данных (search structure) и ожидаемого времени обработки запроса на локализацию точки.

    VI. Диаграмма Вороного и триангуляция Делоне: 6 ч.

    Определение и основные свойства диаграммы Вороного множества точек на плоскости. Наивный алгоритм построения диаграммы Вороного. Нижняя оценка сложности построения диаграммы Вороного. Оптимальные алгоритмы построения диаграммы Вороного: метод плоского заметания, метод <<разделяй и властвуй>>. Возможности обобщения понятия диаграммы Вороного.

    Определение и свойства триангуляций множества точек на плоскости. Легальные (legal) триангуляции: определение и построение. Граф Делоне и его свойства. Триангуляция Делоне. Вероятностный алгоритм построения триангуляции Делоне и анализ его сложности.

    VII. Конфигурации прямых на плоскости и двойственность: 4 ч.

    Задача о вычислении расхождения (discrepancy). Двойственность точек и прямых. Конфигурации (arrangements) прямых на плоскости: определение, сложность, инкрементный алгоритм построения. Понятие зоны прямой в конфигурации; теорема о зоне (Zone Theorem). Оценка сложности инкрементного алгоритма построения конфигурации. Понятие уровня (level) точки в конфигурации прямых. Вычисление уровней вершин конфигурации и их связь с величиной расхождения.

  • Литература Resource
 
 

26 September - 2 October

Выпуклые оболочки.

Show only week 1
 

3 October - 9 October

Пересечения.

В дополнение к вопросам, упомянутым в основной программе курса, на лекции был рассмотрен алгоритм построения пересечения полуплоскостей.

Show only week 2
 

10 October - 16 October

Триангуляция многоугольника.

B. Chazelle, "Triangulaing a Simple Polygon in Linear Time", Discr. Comp. Geom. 6:485-524 (1991) 

(Данную статью я могу выслать желающим по запросу.)

Show only week 3
 

17 October - 23 October

Локализация точки на планарном подразбиении.
Show only week 4
 

24 October - 30 October

Диаграммы Вороного.

Рекомендуемая книга:

A. Okabe, B. Boots, K. Sugihara, S. N. Chui. Spatial Tesselations: Concept and Applications of Voronoi Diagrams (Second Edition). Wiley, 2000.

(Web-страница книги: http://ua.t.u-tokyo.ac.jp/okabelab/Voronoi/.)

Show only week 5
 

31 October - 6 November

Триангуляция Делоне.

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

Cистема автоматического тестирования решений доступна по следующей ссылке:

http://acm.math.spbu.ru/tsweb/.

Используемые тесты разработаны Сергеем Копелиовичем (СПбГУ, мат.-мех. ф-т, 4 курс).

На данный момент, имеется возможность протестировать алгоритмы построения выпуклой оболочки.

Для доступа к системе необходимы имя пользователя (Team login - присваивается индивидуально; пожалуйста, напишите мне, если Вы хотите его получить), пароль (Password - 54321, общий для всех пользователей) и идентификатор контеста (Contest ID - 091027_geom).

Мои  электронные адреса: kira@math.spbu.ru и kira@meta.math.spbu.ru.

Show only week 6
 

7 November - 13 November

Конфигурации прямых на плоскости и двойственность.
Show only week 7
 

14 November - 20 November

14 ноября - последняя лекция

Содержание лекции:

Задача планирования пути (motion planning) на плоскости при наличии полигональных препятствий:

- для точечного робота;

- для полигонального робота (общие идеи).

Граф видимости (visibility graph): определение и алгоритм построения. Использование графа видимости для нахождения кратчайшего пути между двумя точками на плоскости.

Вероятностный алгорим построения минимальной описанной окружности для множества точек на плоскости.

Нахождение диаметра множества точек. Разбиение простого многоугольника на выпуклые  многоугольники.

Show only week 8
 

21 November - 27 November

21 ноября - консультация

Show only week 9
 

28 November - 4 December

28 ноября - экзамен/зачет

Во время подготовки к ответу разрешается пользоваться любыми материалами (однако общение не допускается). После начала ответа пользоваться нельзя ничем.

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

Знание пунктов программы, не вошедших в явном виде в список вопросов к экзамену/зачету, может потребоваться при ответе на дополнительные вопросы.

Для желающих сдать экзамен 28 ноября:

Если Вы запрограммировали и протестировали алгоритмы построения выпкулой оболочки множества точек на плоскости и/или триангуляции простого многоугольника и хотели бы получить на этом основании "льготы" на экзамене, пришлите мне, пожалуйста краткий отчет о практической деятельности, содержащий указание того, какие алгоритмы были запрограммированы, результаты тестирования и программный код. Код должен быть читабельным; в частности, он должен содержать необходимые для его понимания комментарии. Отчет должен быть представлен не позднее 27 ноября, 18:00.  

Show only week 10
 

5 December - 11 December

Очередная возможность для сдачи экзамена/зачета - 12 декабря, 10:00.

Вниманию запрограммиовавших предложенные алгоритмы и желающих получить на данном основании льготы на зачете/экзамене: пришлите мне, пожалуйста, отчет о Вашей работе не позднее 11 декабря, 18:00. Детали см. в предыдущем комментарии.

Show only week 11
 

12 December - 18 December

Крайний срок представления программных реализаций алгоритмов построения выпуклой оболочки множества точек на плоскости и триангуляции простого многоугольника - 18 декабря, 18:00. В указанное время контест 091027_geom будет закрыт.

Show only week 12
 

19 December - 25 December

Show only week 13
 

26 December - 1 January

Очередная сдача зачета/экзамена состоится в субботу, 23 января, в ПОМИ РАН. Начало - в 10:00.

Show only week 14
Skip Latest News

Latest News

(No news has been posted yet)
Skip Upcoming Events

Upcoming Events

There are no upcoming events
Skip Recent Activity

Recent Activity

Activity since Wednesday, 20 November 2024, 11:25 AM

Nothing new since your last login