Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Гамильтоновы циклы

Граф называется гамилътоновым, если в нем имеется простой цикл, проходящий через каждую вершину этого графа (по одному разу). Сам этот цикл также называется гамилътоновым.

Слово “ гамильтонов ” в этих определениях связано с именем известного ирландского мате­матика Уильяма Гамильтона, которым в 1859 году предложена игра “Кругосветное путешествие”. Каждой из двадцати вершин додекаэдра приписано название одного из крупных городов мира. Требуется, переходя от одного города к другому по ребрам додекаэдра, посетить каждый город в точности один раз и вернуться в исходный город. Эта задача, очевидно, сводится к отысканию в графе до­декаэдра простого цикла, проходящего через каждую вершину этого графа.

 


Рисунок 4.23 - Додекаэдр игры “Кругосветное путешествие”

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

Примером нахождения гамильтонового цикла является задача о коммивояжёре. Коммивояжёр (фр. commisvoyageur) – разъездной представитель торговой фирмы, предлагающий покупателям товары по имеющимся у него образцам.

В этой задаче считается, что имеется n городов, которые непременно должен посетить коммивояжёр, - все и ровно по одному разу, проделав путь между городами наименьшей суммарной протяженности.

В терминах теории графов эта задача формулируется таким образом: в заданном связном взвешенном графе найти гамильтонов цикл наименьшей длины.

Эта задача имеет большое практическое и теоретическое значение. В силу своей вычислительной сложности - при полном переборе существует (n - 1) • (n - 2) • … • 2 • 1 = (n - 1) ­ решений (т.е. сгенерировать все возможные перестановки вершин полного графа, подсчитать для каждой перестановки длину маршрута и выбрать из них кратчайший), равносильной целому классу переборных задач, она часто используется математиками для сравнительного анализа и изучения сложности алгоритмов оптимизации в дискретной математике.

Таким образом, решение задачи о коммивояжёре методом полного перебора оказывается практически неосуществимым даже для сравнительно небольших n.

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

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

1. Эвристический.

2. Монте-Карло (статистические выборки).

3. Целочисленного линейного программирования.

4. Динамического программирования.

<== предыдущая лекция | следующая лекция ==>
Связный граф является эйлеровым тогда и только тогда, когда степени всех его вершин четны. | Метод ветвей и границ
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 540; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.