|
0 / 0 / 0
Регистрация: 04.03.2018
Сообщений: 16
|
|
Муравьиный алгоритм27.06.2018, 20:35. Показов 4084. Ответов 3
Метки нет (Все метки)
Здравствуйте. Хотел уточнить у знающих несколько моментов в данном алгоритме. Везде, где я смотрел, данный алгоритм используется для решения задачи коммивояжера. Я же хотел просто найти кратчайший путь. Что я сделал:
1) Задал матрицу смежности 2) Расставил на ребрах некоторое начальное значение феромонов 3) Расположил всех муравьев в начальное точке 4) Муравьи по очереди начинают искать путь до конечного пункта 5) Чтобы сделать выбор, куда идти, вычисляется вероятность перехода по формуле p = (t * 1 / l) / sum, t - феромоны, l - длина данного ребра, sum - cумма (t * 1/l) для всех смежных ребер 6) Выбор делается "случайно". То есть производится генерация случайного числа. Если вероятность перехода по ребру равна 64%(умножил на 100), то, если генерированное число меньше 64, то идем по нему и так далее 7) По пути оставляют за собой феромоны(по формуле t(new) = (1-p)*t(old) + delta, где t - феромон на ребре, а delta = 1/D(D-длина путь текущего муравья, который прошел по данному ребру) 8) Это повторяется для всех муравьев, затем обновляются все феромоны и вероятности перехода Теперь вопросы. Правильный ли алгоритм? Я тестировал его на простом графе. Он выдавал не оптимальное решение. Вне зависимости от параметров, которые я задавал.
0
|
|
| 27.06.2018, 20:35 | |
|
Ответы с готовыми решениями:
3
Муравьиный алгоритм Муравьиный алгоритм Муравьиный алгоритм С++ |
|
Модератор
3133 / 2280 / 469
Регистрация: 26.03.2015
Сообщений: 8,874
|
||||
| 28.06.2018, 02:11 | ||||
|
0
|
||||
|
0 / 0 / 0
Регистрация: 04.03.2018
Сообщений: 16
|
||||
| 28.06.2018, 03:51 [ТС] | ||||
|
Shamil1,
0
|
||||
|
294 / 265 / 48
Регистрация: 09.04.2013
Сообщений: 1,038
|
||
| 30.06.2018, 23:57 | ||
Сообщение было отмечено Not a number как решение
Решение
Прежде всего при старте системы не ставить начальные рандомные феромоны, везде одинаковые, так как муравьи еще ничего не сделали и ходы должны быть равновероятными.
И нужно выработать признак оптимального решения. Например, что самый оптимальный путь (самый вонючий) не менялся последние 100 итераций. И еще, муравьиный алгоритм не обязан давать идеальный ответ, он позволяет найти некоторый "достаточно хороший" за небольшое время. У нас не будет слишком сильного накопления феромонов, и будет проще слезть с решений потерявших актуальность. Если путь будет все еще актуален, то муравьи будут продолжать его обновлять и особых проблем сильное испарение не доставит. Добавлено через 7 минут Я надеюсь ты муравьям запретил повторное посещение узлов? По возможности попробуй сделать визуализацию чтобы тебе показывалась карта распределения феромонов поверх рисунка графа. Обычно в качестве демонстрации берут граф в виде 2D массива (можно с лабиринтом) и отрисовывают его в виде картинки.
1
|
||
| 30.06.2018, 23:57 | |
|
Помогаю со студенческими работами здесь
4
Муравьиный алгоритм, ACO Муравьиный алгоритм в задаче Коммивояжера Задача коммивояжера, муравьиный алгоритм Нужен алгоритм поиска пути в этом лабиринте (будь то волновой алгоритм или алгоритм правой/левой руки )
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Сочетание глобально распределённой вычислительной мощности и инновационных. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|