Санкт-Петербургский колледж Информационных технологий Студенческое научное общество «Шаг в будущее» 7-я итоговая студенческая научно-практическая конференция.

Презентация:



Advertisements
Похожие презентации
Целочисленные алгоритмы © К.Ю. Поляков, Алгоритм ЕвклидаАлгоритм Евклида 2.Решето ЭратосфенаРешето Эратосфена 3.Длинные числаДлинные числа 4.Целочисленная.
Advertisements

Алгоритмы топологической оптимизации транспортных сетей.
Подготовил Андреев Алексей. Задача о назначениях Задача о рюкзаке Задача коммивояжера Задача теории распределений Задача маршрутизации транспорта Задача.
Графы Граф – совокупность точек и линий, в которой каждая линия соединяет две точки. Точки – вершины графа Линии – рёбра графа Вершины, соединенные ребром,
1 Исследование алгоритмов решения задачи k коммивояжеров Научный руководитель, проф., д.т.н. Исполнитель, аспирант Ю.Л. Костюк М.С. Пожидаев Томский государственный.
Не говори, чему учили, а скажи, что узнал. (Пословица)
«Аппроксимация водной стихии» Работу выполнили студенты 393 группы: Иванов Максим и Сидоренко Павел Преподаватели-консультанты: Матысик И.А., Смирнова.
ТЕОРИЯ ГРАФОВ ЗАДАЧА КОММИВОЯЖЕРА Гамильтоновы графы применяются для моделирования многих практических задач. Основой всех таких задач служит классиче.
Теория графов. Теория графов – обширный самостоятельный раздел дискретной математики. Используется при проектировании компьютерных сетей, трубопроводов,
Маршруты на графах Нахождение компонент связности Поиск маршрутов, удовлетворяющим определённым требованиям Кратчайшие маршруты.
Номер варианта выбирается по параметру зачетки d 10 соотв Задача Коммивояжёра Имеется n городов, занумерованных числами.
АЛГОРИТМЫ НАХОЖДЕНИЯ КРАТЧАЙШИХ ПУТЕЙ НА ГРАФАХ..
« Исследование окружности в среде ЛОГО» (интегрированный урок «математика+информатика», 6 класс) Мочалова М.В. учитель информатики ГБОУ лицей 144 г.Санкт-Петербург.
Алгоритмы сканирования и обхода Лекция 3. Алгоритм сканирования графа Input: Орграф (граф) G и вершина s. Output: Множество R вершин, достижимых из s,
Муравьиный алгоритм определения критических связей в СБИС Зав. каф. САПР ИКТиИБ ЮФУ, д.т.н., проф. В.В. Курейчик, аспирант каф САПР ИКТиИБ ЮФУ, Д. Ю. Запорожец,
Задача коммивояжера. Задача коммивояжера: имеется n городов, задана матрица расстояний между городами. Коммивояжер должен побывать в каждом городе только.
1. Строятся вершины первого уровня. Для них подсчитывается оценка ψ( ) 2. Ветвится вершина, которой соответствует лучшая оценка. Подсчитываются оценки.
Графы. Деревья Продолжение А.Г.Баханский © Программирование – вторая грамотность. А.П.Ершов Граф (Л.Н.Толстой) Граф (не ориентированный) Граф (ориентированный)
Алгоритм Флойда-Уоршалла Находит кратчайшие расстояния между всеми парами вершин графа Идея: Строится специальная матрица D, элементы которой – кратчайшие.
Вычислительная сложность Классы сложности P и NP. Сергей Казаков, аспирант каф. КТ, НИУ ИТМО.
Транксрипт:

Санкт-Петербургский колледж Информационных технологий Студенческое научное общество «Шаг в будущее» 7-я итоговая студенческая научно-практическая конференция Тема: Применение теории графов в программировании Работу выполнили: студенты группы 02 Лапин Сергей Надыршин Илья Преподаватель-консультант: Шапкина Лидия Михайловна Санкт-Петербург, май 2011

Гипотеза Теория графов подходит для решения транспортных задач Теория графов подходит для решения транспортных задач Ее использование позволяет найти оптимальный, с точки зрения длины или стоимости, маршрут Ее использование позволяет найти оптимальный, с точки зрения длины или стоимости, маршрут

Теория графов Тео́рия гра́фов раздел дискретной математики, изучающий свойства графов. В общем смысле граф представляется как множество вершин (узлов), соединённых рёбрами. В строгом определении графом называется такая пара множеств G=(V,E), где V есть подмножество любого счётного множества, а E подмножество V×V.

Задача коммивояжера Коммивояжер (бродячий торговец) должен выйти из первого города и, посетив по разу в неизвестном порядке города 2,3,...n, вернуться обратно в первый город. В каком порядке надо обходить города, чтобы замкнутый путь (тур) коммивояжера был кратчайшим?

Главная функция и инициализация глобальных переменных int Pmin[N], // лучшая перестановка P[N], // текущая перестановка Lmin, // минимальная длина L, // текущая длина D[N][N]; // матрица расстояний void main() { Lmin = 32767; // большое число L = 0; P[0] = 1; // начальная вершина 1 Commi(1); // построить тур for ( int i = 0; i < N; i ++ ) // вывести результат printf("%d ", Pmin[i]); }

Метод «грубой силы» void Commi( int q ) // q – число уже поставленных вершин { int i, temp; if ( q == N ) { // перестановка получена if ( L < Lmin ) { Lmin = L; for ( i = 0; i < N; i ++ ) // запомнить новый минимальный тур Pmin[i] = P[i]; } return; } for ( i = q; i < N; i ++ ) { temp = P[q]; P[q] = P[i]; P[i] = temp; // P[q] P[i] L += D [P[q-1]] [P[q]]; // добавить ребро Commi ( q+1 ); // рекурсивный вызов L -= D [P[q-1]] [P[q]]; // убрать ребро temp = P[q]; P[q] = P[i]; P[i] = temp; // P[q] P[i] }

Метод ветвей и границ void Commi( int q ) // q – число уже поставленных вершин { int i, temp; if ( q == N ) { // перестановка получена if ( L < Lmin ) { Lmin = L; for ( i = 0; i < N; i ++ ) // запомнить новый минимальный тур Pmin[i] = P[i]; } return; } for ( i = q; i < N; i ++ ) { temp = P[q]; P[q] = P[i]; P[i] = temp; L += D [P[q-1]] [P[q]]; if ( L < Lmin ) Commi ( q+1 ); L -= D [P[q-1]] [P[q]]; temp = P[q]; P[q] = P[i]; P[i] = temp; }

Метод случайных перестановок Используют метод случайных перестановок. В алгоритме повторяются следующие шаги: 1. Выбрать случайным образом номера вершин i и j в перестановке. 2. Если при перестановке вершин с номерами i и j длина пути уменьшилась, такая перестановка принимается.

Использование теории графов в других сферах В химии; В информатике и программировании В коммуникационных и транспортных системах В экономике В логистике В схемотехнике

Дополнительные материалы Графы как waypoints:AVI MPGAVIMPG

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

Промо – ролик Avi version. Mpg version.

Источники Программирование на языке Си; К. Поляков, C%EC%E8%E2%EE%FF%E6%E5%F0%E0 htm