
- •Оглавление
- •Введение
- •1 Постановка задачи коммивояжера
- •2 Муравьиный алгоритм
- •2.1 Общие положения
- •2.2 Концепция муравьиных алгоритмов
- •2.3 Свойства муравья
- •3 Постановка задачи контрольной работы
- •4 Описание работы программы
- •5 Исследование работы алгоритма в зависимости от значений параметров: ,
- •6 Текст программы
- •Заключение
- •Литература
Федеральное агентство по образованию Российской Федерации
Государственное образовательное учреждение высшего профессионального образования
«Южно-Уральский государственный университет»
Факультет «Экономики и предпринимательства»
Кафедра «Информационные системы»
РЕШЕНИЕ ЗАДАЧИ КОММИВОЯЖЕРА ПО ПРИНЦИПУ МУРАВЬИННОЙ КОЛОНИИ
(Вариант 5)
КОНТРОЛЬНАЯ РАБОТА
по дисциплине «Интеллектуальные информационные системы»
Челябинск 2012
Оглавление
Оглавление 2
Введение 3
1 Постановка задачи коммивояжера 4
2 Муравьиный алгоритм 4
2.1 Общие положения 4
2.2 Концепция муравьиных алгоритмов 4
2.3 Свойства муравья 5
3 Постановка задачи контрольной работы 7
4 Описание работы программы 8
5 Исследование работы алгоритма в зависимости от значений параметров: , 11
6 Текст программы 12
Заключение 24
Литература 25
Введение
Каждый, кто хоть раз в жизни наблюдал за муравьями, обязательно должен был заметить: вся деятельность этих насекомых имеет ярко выраженную групповую окраску. Работая вместе, группа муравьев способна затащить в муравейник кусок пищи или строительного материала, в 10 раз больше самих работников. Ученые давно знают об этом, но только в последнее время задумались о полезном применении муравьиного опыта в повседневной жизни.
Сам по себе муравей - достаточно примитивное существо. Все его действия, по сути, сводятся к элементарным инстинктивным реакциям на окружающую обстановку и своих собратьев. Однако несколько муравьев вместе образуют сложную систему, которую некоторые ученые называют «коллективным разумом». Поэтому алгоритмы муравьиных колоний часто называют алгоритмами роевого интеллекта.
Например, группа муравьев прекрасно умеет находить кратчайшую дорогу к пище. Если какое-нибудь препятствие - палка, камень, нога человека - встает на пути, бравые добытчики быстро находят новый оптимальный маршрут.
Муравьи решают проблемы поиска путей с помощью химической регуляции. Каждый муравей оставляет за собой на земле дорожку особых веществ - феромонов. Другой муравей, почуяв след на земле, устремляется по нему. Чем больше по одному пути прошло муравьев - тем явнее след, а чем явнее след - тем большее «желание» пойти в ту же сторону возникает у муравьев. Поскольку муравьи, нашедшие самый короткий путь к «кормушке», тратят меньше времени на путь туда и обратно, их след быстро становится самым заметным. Он привлекает большее число муравьев, и круг замыкается. Остальные пути - менее используемые - потихоньку пропадают.
Алгоритмы муравья, или оптимизация по принципу муравьиной колонии (это название было придумано изобретателем алгоритма, Марко Дориго), основаны на применении нескольких агентов и обладают специфическими свойствами, присущими муравьям, и используют их для ориентации в физическом пространстве. Алгоритмы муравья особенно интересны потому, что их можно использовать для решения не только статичных, но и динамических проблем, например, в изменяющихся сетях.
Целью контрольной работы является создание программы, реализующей алгоритм муравья.
1 Постановка задачи коммивояжера
Задача о коммивояжере заключается в нахождении кратчайшего гамильтонова цикла в графе. Без каких-либо изменений в постановке она используется для проектирования СБИС.
Более строго постановка задачи звучит следующим образом: дан граф G=(X,U), где |X| = n – множество вершин (города), |U| = m – множество ребер. Дана матрица чисел D(i, j), где 1 ≤ i, j ≤ n, представляющих собой стоимость ребра между вершинами xi, xj. Требуется найти перестановку φ из элементов множества X, такую, что значение целевая функция равно:
.