Укладка иерархических сетей
Назначение - поиск оптимальной укладки вторичной сети в первичную сеть для модели гиперсети.
Область применения - анализ и проектирование сетей различного назначения.
Используемый алгоритм - В программе реализован классический алгоритм Флойда и разработанные авторами и описанные в [1-3] алгоритмы.
Среди использованных алгоритмов выделены те, которые не учитывают ограничение на надежность:
Floyd — классический Алгоритм Флойда
Greedy — жадный алгоритм
MetrRand, Metr1, Metr2 — В качестве начального решения берется решение Алгоритма Флойда. С помощью некоторой метрики производится сортировка ветвей первичной сети и оптимизация решения для улучшения.
Следующие алгоритмы учитывают ограничение на надежность:
MaxProb - алгоритм Флойда ведет поиск самых надежных путей (по вероятности)
AntColony – алгоритм муравьинной колонии
Алгоритм k-кратчайших путей (k-path) - последовательное удаление из путей самых дорогих ветвей позволяет найти более дешевые пути, удовлетворяющие ограничение на надежность
Алгоритм k-кратчайших путей - 2 (k-path 2) -это вариация предыдущего алгоритма, только поиск ведется не от самых надежных путей, а от самых дешевых.
AntColony+ k-path - это алгоритм AntColony, в котором для ненайденных путей, используются пути, найденные алгоритмом k-path.
Функциональные возможности -
- генерация первичной сети или загрузка ее из текстового файла
- укладка вторичной сети в первичную несколькими алгоритмами.
Описание программы:
Программа состоит из формы, в верхней части которой есть 3 вкладки:
- Graph PS, на которой рисуется первичная сеть
- На вкладке Generate PS представлены поля в котроых задаются парметры для генерации графа первичной сети PS (решетка):
- Вкладка AntColony — позволяет выбрать параметры для Алгоритма AntColony и увидеть промежуточные результаты его работы.
В нижней части формы можно задать параметры вторичной сети WS и выбрать алгоритм.
Кнопка FindWS — запускает один из алгоритмов и справа в текстовом поле показывается решение: стоимость укладки ребер, вероятность существования каждого ребра и вершины по которым оно проходит.
[1]. Попков В.К.,Токтошов Г.Ы., Юргенсон А.Н. Об одном подходе к оптимизации инфраструктуры инженерных сетей // Вестник СибГУТИ. – 2012. Т. 3 — С.11–28.
[2]. Guljigit Toktoshov, Anastasiya Yurgenson, Denis Migov. Design of Utility Network Subject to Reliability Constraint // Proc. of International Multi-Conference on Engineering, Computer and Information Sciences (SIBIRCON), Novosibirsk, Russia, 18-22 Sept. 2017, DOI: 10.1109/SIBIRCON.2017.8109864, P. 172-175
[3]. Токтошов Г.Ы., Юргенсон А.Н., Мигов Д.А. Исследование эффективности применения метода k-кратчайших путей для оптимизации топологии иерархических сетей // Труды XVI международной азиатской школы-семинара «Проблемы оптимизации сложных систем», 25-29 августа 2020 г.- С. 38-42 - DOI: 10.24411/9999-018A-2020-100007
Подробное описание программы в прилагаемом файле.
Инструментальные средства создания -Lazarus (OS Linux).
Разработка программы осуществлялась при финансовой поддержке гранта РФФИ № 18-07-00460.
Linux
Вложение | Размер |
---|---|
Исходный код и документация | 6.58 МБ |