Тип работы:
Предмет:
Язык работы:


Генерация случайных многоугольников

Работа №125583

Тип работы

Бакалаврская работа

Предмет

математика и информатика

Объем работы22
Год сдачи2017
Стоимость4550 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
42
Не подходит работа?

Узнай цену на написание


Введение 4
1. Существующие алгоритмы генерации случайных многоугольников 5
1.1. Алгоритм генерации выпуклого случайного многоугольника 5
1.2. Алгоритм RPA генерации случайного многоугольника 6
1.3. Алгоритм Никулина генерации случайного многоугольника 6
2. Разработанные алгоритмы генерации случайных многоугольников 8
2.1. Выпуклые многоугольники: первый алгоритм 8
2.2. Выпуклые многоугольники: второй алгоритм 9
2.3. Тестирование алгоритмов генерации выпуклых многоугольников 16
2.4. Звёздные многоугольники 17
2.5. Тестирование алгоритмов генерации звездных многоугольников 19
2.6. Программная реализация 20
Заключение 21
Список литературы 22

Существуют различные области применения, в которых основными объектами яв­ляются многоугольники. Например, среди этих областей есть алгоритмы для задач вычислительной геометрии, алгоритмы компьютерной графики, графические приложе­ния, которые стремятся имитировать природные структуры: облака, земельные образо­вания, биологические или гидрологические явления.
Генерация случайных многоугольников используется для проверки правильности и оценки потребления процессорного времени алгоритмов, работающих на многоугольни­ках. Данные могут быть заданы вручную или случайно. Главной сложностью генерации вручную является потребность предвидеть особенности задачи, чтобы за минимальное время протестировать исключительные случаи. Сгенерированные случайным образом данные позволяют увеличить объем и статистическую выборку работы алгоритма, так­же при большом количестве испытаний будут обнаружены все имеющиеся в алгоритме ошибки.
Данные для статистического тестирования должны быть разнообразны и достаточ­ны по количеству, так как нет смысла проверять только на частных случаях многоуголь­ников и на маленькой выборке. Часто практически невозможно получить достаточно большое количество разнообразных входных данных. Тогда наилучший вариант — за­пустить алгоритм для достаточно большого числа случайных входных данных. А так как в каждой задаче объекты могут быть своими, то хорошо бы задавать параметры, чтобы генерировать подходящие для этой задачи данные.
В данной работе рассматривается задача генерации случайных многоугольников с заданным количеством вершин и заданным классом (выпуклый, звездный). Описан­ные выше параметры являются обязательными и выбираются при построении много­угольника. Также есть и дополнительные: максимальная и минимальная длины ребра, диапазон изменения угла и дисперсия величины угла. Дополнительные параметры не являются необходимыми в поставленной задаче и учитываются при возможности раз­рабатываемых алгоритмов.
Работа состоит из двух глав. В первой главе рассматриваются основные известные алгоритмы и идеи на которых они основаны, анализируется применимость к постав­ленной задаче. Во второй главе описываются и сравниваются между собой алгоритмы, разработанные в рамках данной работы.

Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


В рамках данной работы были разработаны два алгоритма репарации случайных выпуклых многоугольников и алгоритм генерации случайных звёздных многоугольни­ков. Алгоритмы были реализованы объединены в одну общую программу. Программа позволяет кроме основных параметров выбирать частные дополнительные параметры и экспортировать полученный многоугольник в TjjX-файл. Также была протестирована, сравнена и проанализирована скорость работы алгоритмов, строящих многоугольники одних типов, на большом объеме экземпляров. Таким образом поставленная задача бы­ла выполнена.
В качестве развития темы возможна разработка алгоритмов генерации многоугольни­ков других классов, а так же добавление других дополнительных параметров к разра­ботанным алгоритмам.


1. Никулин Е.А. Труды Нижегородского государственного технического университета им. Р.Е. Алексеева. - НГТУ им. Р.Е. Алексеева, 2013. — С. 84-87.
2. Никулин Е.А. Компьютерная геометрия и алгоритмы машинной графики. - СПб.: БХВ-Петербург, 2003. — С. 51-54.
3. Препарата Ф., Шеймос М. Вычислительная геометрия: Введение. — М.: Мир, 1989. • 560 с.
4. Auer Т., Held М. Heuristics for the Generation of Random Polygons. // 8th Canadian Conference on Computational Geometry. — 1996. — P. 38-43.
5. Epstein P. Generating Geometric Objects at Random. // Carleton University. — 1992. • P. 267-274.
6. Dailey D., Whitfield.D. Constructing Random Polygons // Slippery Rock University of Pennsylvania. — 2008. — P. 119-224.
7. O’Rourke J., Virmani M. Generating Random Polygons. // Smith College. — 1991. — P. 38-44.
8. Zhu C., Sundaram G., Snoeyink J., Mitchell J.S.B. Genrating Random Polygons with Given Vertices // Slippery Rock University of Pennsylvania. — 1996. — P. 277-290.


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2025 Cервис помощи студентам в выполнении работ