Автор работы: Пользователь скрыл имя, 05 Декабря 2011 в 15:22, курсовая работа
В данной курсовой работе рассматривается задача коммивояжера. Целью курсовой работы является решение задачи коммивояжера методом ветвей и границ.
Задача коммивояжера заключается в определении такой последовательности объезда городов, которая обеспечит минимальное время переезда, или минимальную стоимость проезда, или минимальное расстояние переезда.
Введение…………………………………………………………………………………. 2
Постановка задачи………………………………………………………………………3
Решение задачи о коммивояжере методом ветвей и
границ: основная схема………………………………………………………………... 5
Решение задачи о коммивояжере методом ветвей и границ. Примеры………...11 Практическое задание…………………………………………………………………19
Описание работы программы………………………………………………………...20
Приложение……………………………………………………………………………..21
Заключение……………………………………………………………………………...22
Список использованных источников……………………………………………….23
Для множества матрица такова:
Таблица 20
1 | 2 | 5 | |
2 | ¥ | ¥ | 1 |
3 | ¥ | 0 | 0 |
5 | 0 | 1 | ¥ |
Приведение этой матрицы дает:
Таблица 21
1 | 2 | 5 | |
2 | ¥ | ¥ | 0 |
3 | ¥ | 0 | 0 |
5 | 0 | 1 | ¥ |
Для оценочной функции: =17+1=18.
Получилось,
что для дальнейшей разработки можно
брать любое из множеств
и
. В первом случае уже получена матрица
размером 2´2; ее нулевые клетки
дают те ребра, которые с найденными ранее
составляют обход коммивояжера, причем
вес этого обхода равен значению оценочной
функции - 18. Вот этот обход:
(1,4)(4,3)(2,1)(5,2)(3,5)
или 1®4®3®5®2®1.
Найденный рекорд на самом деле является искомым оптимумом, потому что значения оценочной функции на всех оборванных ветвях (на границах) больше или равны весу рекорда.
При ином варианте выборов по ходу разбиений можно было получить другой оптимум: 1®4®3®2®5®1.
ПРАКТИЧЕСКОЕ ЗАДАНИЕ
Требуется найти легчайший простой основный ориентированный цикл в полном взвешенном ориентированном графе на четырех вершинах (рис. 2):
Рис. 2.
Ориентированный
граф задачи коммивояжера
Попробуем
решить данную задачу методом «жадный
алгоритм».
Из пункта 1 существует только один путь – путь к пункту 2, стоимость пути равна 78. Из пункта 2 существует только один путь – путь к пункту 3, стоимость пути равна 81. Из пункта 3 существует два пути – путь к пункту 1 и путь к пункту 4. Выберем самый кратчайший путь – это путь к пункту 4, стоимость пути равна 16. Из пункта 4 существует два пути – путь к пункту 1 и путь к пункту 2. Так как в пункте 2 мы уже были, то идем в пункт 1, стоимость пути равна 25.
Полный
обход коммивояжера, исходя из предыдущего
решения, равен 1®2®3®4®1, а сумма пути равна:
78+81+16+25 = 200.
Описание
работы программы
В главной процедуре вызываются только две: readdata - чтение из файла и process - вывод на экран.
От
пользователя требуется создать
файл с исходными данными input.txt
и запустить программу в среде Borland Pascal
7.0. Конечный результат представляет собой
оптимальный маршрут и длину пути, выводимый
на экране компьютера.
Приложение А
(обязательное)
Пример исходного текстового файла input.txt
Конечные результаты вычислений.
ЗАКЛЮЧЕНИЕ
Существуют
несколько методов решения
СПИСОК ИСПОЛЬЗОВАННЫХ
ИСТОЧНИКОВ
Информация о работе Решение задачи о Коммивояжере методом ветвей и границ