Муравьиный алгоритм

Решаем задачу коммивояжера приближенным методом, предложенным Марко Дориго (Marko Dorigo). Ребрам полного графа К5 приписываем длины и уровень феромона. Потом запускаем "муравья", который выбирает свой путь в зависимости от дальности города и уровня феромона. А уровень феромона определяется популярностью этого направления. Пройдя весь путь (каждая вершина проходится по одному разу), муравей оставляет феромон тем большего уровня, чем короче был путь. В лекции использованы работы Сергея Штовбы (Украина) из журнала Exponenta Pro, 2003, и автора ("Графы в Maple").

Пікірлер: 71

  • @mesmeridze1
    @mesmeridze13 жыл бұрын

    Потрясающий лектор. Институт закончил и периодически смотрю ролики. Очень помогли на сессиях.

  • @RudolfKlotz
    @RudolfKlotz7 жыл бұрын

    Михаил Николаевич, огромное спасибо за интереснейшую лекцию!

  • @dionraiden4554
    @dionraiden45544 жыл бұрын

    Из других ВУЗов тоже вас смотрим, очень качественно изложен материал, спасибо.

  • @denispotapenko5610
    @denispotapenko561010 жыл бұрын

    Отличное видео! Действительно хороший "туториал" :) Причем и человека приятно слушать и по теме рассказывает понятно, и смежные темы также успевает затронуть :) Спасибо за материал, продолжайте в том же духе!

  • @met4ltech
    @met4ltech3 жыл бұрын

    Спасибо большое за прекрасное пояснение!

  • @user-jz6ug6do6g
    @user-jz6ug6do6g5 жыл бұрын

    Все очень понятно. Спасибо большое.

  • @AnonExpert1
    @AnonExpert14 жыл бұрын

    Очень круто и понятно! Познакомился с вашими лекциями ещё на 1 курсе, сейчас 5 и снова актуально :)

  • @FunFearShow
    @FunFearShow10 жыл бұрын

    Большое спасибо! помогли при написании курсовой )

  • @MrProband
    @MrProband9 жыл бұрын

    Спасибо за Ваш ответ.

  • @user-sg8dd1bq4m
    @user-sg8dd1bq4m6 жыл бұрын

    Спасибо большое за видео, очень полезное. Все четко и ясно. Приятно было слушать.

  • @user-nr4uj8gc5j

    @user-nr4uj8gc5j

    3 жыл бұрын

    Ничего не понятно, но Ооооочень интересно😂 игнорирований само значение слова «алгоритм», как «порядок действий». При выборе каждого параметра ещё куча «но» присутствует. Короткий маршрут не бери, так жадные комерсы делают, на длинный не иди, так муравьи не советуют🤪🤪🤪🤣

  • @APL375
    @APL37511 жыл бұрын

    Да ладно, не ёрничайте! Я говорю о том, что делать человеку нечего как проверять ваши расчеты. Главное - это идея. А тема раскрыта великолепно. Благодарю.

  • @pavellyakh5598
    @pavellyakh55984 жыл бұрын

    Спасибо! Шикарное видео. Юмор про элиту на высоте! Учился у Белоусова А.И. в МГТУ, как и Вы он очень умный преподаватель, у него шутки тоже на высоте, но донесение материала мне больше Ваше нравится.

  • @xabikiqwe
    @xabikiqwe11 жыл бұрын

    Спасибо. Диплом сделан. )))

  • @meow_kis
    @meow_kis4 жыл бұрын

    Спасибо большое! Очень помогли при подготовке к контрольной по эволюционным вычислениям!

  • @happysandbox4085

    @happysandbox4085

    4 жыл бұрын

    Я думал тут один из 2020😃

  • @mozgotron12
    @mozgotron123 жыл бұрын

    Блин, я тоже хочу себе такой галстук с синей лампочкой.

  • @Kirsanov2011
    @Kirsanov201111 жыл бұрын

    Поздравляю!

  • @user-kf8oq4gz3g
    @user-kf8oq4gz3g3 жыл бұрын

    Здорово, спасибо! : ) Единственное, наверное, что вы не упомянули - это условие остановки. Но тут уж можно найти, остальное было очень хорошо и очень понятно : )

  • @Ramooo25
    @Ramooo2511 жыл бұрын

    доступно,спасибо

  • @SadMelvin
    @SadMelvin11 жыл бұрын

    Спасибо!

  • @denisfrolovru
    @denisfrolovru7 ай бұрын

    Первые 8 минут можно не смотреть - воду льет.

  • @AlexNirt12
    @AlexNirt1211 жыл бұрын

    5 х 4 х 3 х 2 = 120 вариантов на один город , спасибо за такие видео =))

  • @ventilyator
    @ventilyator7 жыл бұрын

    спасибо!

  • @DenisKozlov-MCP
    @DenisKozlov-MCP11 жыл бұрын

    Спасибо, отличное видео! А вы будете Мультиагентные технологии рассматривать?

  • @user-tz6zo2jl4i
    @user-tz6zo2jl4i3 жыл бұрын

    Спасибо большое за видео. Все четко и понятно. По вашему примеру реализовал алгоритм в game maker studio))по вашей примеру проход 1000 муравьев решает за пол секунды. С коррекцией ферамонов конечно сложновато. Приходится смотреть чего достигла 1000 и потом корректировать чтоб получилось более идеальное решение. Тут разве что делать отдельный алгоритм, который будет сам изменять значения коррекции феррамона для более оптимального решения

  • @OleksandrKravchuk-tg8yx
    @OleksandrKravchuk-tg8yx6 жыл бұрын

    Отличное объяснение. Смутило два момента: > для второй интерации сумарная вероятность, подсчитаная на доске, была ~93%, а не 100% > язык с - простой язык

  • @asd1qwe1
    @asd1qwe19 жыл бұрын

    норм мужик

  • @tanyagnatyuk8268
    @tanyagnatyuk82689 жыл бұрын

    а какой коэффициент испарения лучше брать?

  • @mozgotron12
    @mozgotron123 жыл бұрын

    Как отличить физика от математика? Всё просто: попросите его обойти столб кругом. Если спросит: "Зачем?" - значит физик. Если спросит: "По часовой стрелке или против?" - значит математик.

  • @user-ii9xe4pu6x
    @user-ii9xe4pu6x3 жыл бұрын

    Здравствуйте! Я правильно понял, что в данном примере была показана одна итерация с одним муравьем?

  • @Kirsanov2011
    @Kirsanov201111 жыл бұрын

    Ничего не понял! Это по-русски?

  • @Kirsanov2011
    @Kirsanov201111 жыл бұрын

    Ну, вот. Теперь ясно. Действительно, кое-что можно было и не расписывать. Ну это для тех, кто любит вычислять - фанатов чисел.

  • @MrSkySerfeR
    @MrSkySerfeR11 жыл бұрын

    На 27-28 минутах видео при подсчёте вероятности того, что муравей пойдёт из города №4 в город №5 ( P4,5) допущена ошибка. Значение которое должно получиться 29.38747419. Наверняка это "описка". Сумма этих трёх вероятностей должна равняться 100, у Вас же она равняется 94, и это бросается в глаза.

  • @Walter_Sullivan
    @Walter_Sullivan3 жыл бұрын

    Очень классная лекция! Доступно и подробно на пальцах объяснено применение этого алгоритма. Однако, сколько видео я не пересмотрел по этому алгоритму один вопрос так и остался непонятным - какой физический смысл у показателя феромона примирительно к какому нибудь реальному технологическому процессу? Например, если мы рассматриваем развозку почтовых бандеролей или развозку продуктов по магазинов? Также остаётся непонятен физический смысл процесса высыхания алгоритма Кроме того не совсем понятна операция с "шариком и рулеткой" - даже с учётом неравномерной вероятности выпасть может любой из городов (если он уже не был посещен конечно) и таким образом перебирать нужно все равно все итерации - тогда есть ли смысл в этой "рулетке"? Либо можно сославшись на наибольшую вероятность автоматически выбрать путь с наибольшей же вероятностью, но тогда все равно рулетка отпадает как механизм

  • @happysandbox4085
    @happysandbox40854 жыл бұрын

    Доброго времени суток! Мне интересно, прошло 7 лет, сейчас на вскидку того времени собрали все компьютеры в один(на данный момент самый слабый из теперешнего) и какие ваши впечатления, уже пробовали для себя реализовать вычисления Хамилтона?)) Спасибо за разъяснения!

  • @Kirsanov2011

    @Kirsanov2011

    4 жыл бұрын

    Пробовали. Все отлично.

  • @user-ex1wi2jr5b
    @user-ex1wi2jr5b Жыл бұрын

    А у муровьев социолизм))

  • @igorek9191
    @igorek91918 жыл бұрын

    Насчет обновления феромона. Если мы нашли новое решение, хуже старого, то соответственно нам лучше это решение "забыть". Получается обновлённый феромон нужно считать (1-р) * (t + delta t). Т.е. коэффициент испарения применять к обновлённому решению, а не к старому, прибавляя потом дельта тау...?

  • @Kirsanov2011

    @Kirsanov2011

    8 жыл бұрын

    +Игорь Власюк "Высыхает" путь всегда, и хороший и плохой.

  • @user-qb4sn5xr7d
    @user-qb4sn5xr7d9 жыл бұрын

    Я, вот только, одного не понял. Каким образом были выбраны "стартовые значения" тау?

  • @Kirsanov2011

    @Kirsanov2011

    9 жыл бұрын

    Константин Приб В учебных целях произвольно. Да и в настоящих исследованиях тоже, но только там они мало все друг от друга отличаются. Настоящей теории выбора нет. Эксперимент. Но опыт показывает, что начальная картина быстро затирается и от нее мало что зависит.

  • @andreyhalushko4923
    @andreyhalushko49238 жыл бұрын

    норм

  • @vandriichuk
    @vandriichuk2 жыл бұрын

    Очень интересно. Но не понял откуда изначально взялась длина расстояний и кол-во ферономов для каждого участка? Особенно, откуда изначально взялись значения феромонов для каждого отрезка?

  • @Kirsanov2011

    @Kirsanov2011

    2 жыл бұрын

    Обычно начальные феромоны - случайные числа. А расстояния - даны по условию, например, расстояния между реальными объектами.

  • @vandriichuk

    @vandriichuk

    2 жыл бұрын

    @@Kirsanov2011 подскажите, пожалуйста, я исследую взаимосвязи между алгоритмом муравьиной колонкии и reinforcement learning. Вы не сталкивались с информацией на эту тему? Может где-то есть что-то почитать? И еще я работаю над автоматизацией подбора параметров альфа и бета для муравьиной колонии. Ничего такого не встречали?

  • @user-lw3tr6in3x
    @user-lw3tr6in3x8 жыл бұрын

    Здравствуйте! Я внимательно прослушал, возникли вопросы: 1) чему равно Q 2) ответ в задаче какой? 3) мы явно один раз не прогоняем муравья, значит другие тоже бегают и выбирают путь, значит есть и другие пути? 4) когда выходить с цикла? С момента постоянного значения?

  • @Kirsanov2011

    @Kirsanov2011

    8 жыл бұрын

    +виктор коледин 1) Q обычно подбирается экспериментально. Тут вообще классической науки еще мало, мало что строго доказано - больше опыт и интуиция... 2) Ответ - длина пути 3) есть и другие пути. Ищем минимальный 4) Выходить, когда "устаканится". Т.е. разность достигнет необходимой точности

  • @user-lw3tr6in3x

    @user-lw3tr6in3x

    8 жыл бұрын

    Муравьиный алгоритм оказал на меня большой интерес. Если бы еще эти константы знать я понимаю, что все экспериментально, но вот реализация .... Спасибо за ответ, вы очень полезную работу делаете это большой плюс для нас всех интересующихся алгоритмами, книга ваша книга Графы в Maple очень ценная все там понятно и ясно.

  • @Kirsanov2011

    @Kirsanov2011

    8 жыл бұрын

    +виктор коледин Спасибо! Жаль там есть опечатки(но они очевидны и легко исправляются), на сайте своем (она там вложена) я стараюсь их исправлять... Еще одно замечание. Программы написаны в Maple 8, иногда в след версиях не работают, надо чуть исправить объявление with пакетов... Я как нибудь это сделаю централизованно...

  • @user-lw3tr6in3x

    @user-lw3tr6in3x

    8 жыл бұрын

    я тоже вижу, но в основном эти опечатки мелочи, умный человек видит простой язык в первую очередь вот это привлекает, чем проще тем лучше.

  • @user-ec8ui3ch9r
    @user-ec8ui3ch9r3 жыл бұрын

    Муравьи коммуниcты кcта, мораль - думайте cами

  • @Kirsanov2011
    @Kirsanov201111 жыл бұрын

    Да. Осенью. Пока готовлю еще...

  • @sergeykodzha2621
    @sergeykodzha26214 жыл бұрын

    так откуда начальные значения феромонов брать? Если начинать с нулевых значений, все вероятности будут тоже 0.

  • @Kirsanov2011

    @Kirsanov2011

    4 жыл бұрын

    Начальное распределение - случайное. И здесь важно качество псевдослучайных чисел.

  • @f0cus570
    @f0cus5705 жыл бұрын

    Что за феромоны ? Я так и не понял Как их высчитать ?

  • @Kirsanov2011

    @Kirsanov2011

    5 жыл бұрын

    просто назначить

  • @f0cus570

    @f0cus570

    5 жыл бұрын

    @@Kirsanov2011 если просто взять рандомные феромоны, то решение будет далеко от точного, верно?

  • @Kirsanov2011

    @Kirsanov2011

    5 жыл бұрын

    Нет. Как раз это лучше для начального распределения. А потом уж путь муравьи оставляют свой след (феромоны) строго по правилу - чем длиннее путь, тем меньше феромонов. Тогда какой нормальный муравей пойдет по слабо затоптанному пути? Пойдет туда, где путь короче, а след толще. Не забывайте, что циклов должно быть много. Да еще и элитные муравьи делают свое дело.

  • @igorek9191
    @igorek91918 жыл бұрын

    Псевдо кода нет на алгоритм?

  • @Kirsanov2011

    @Kirsanov2011

    8 жыл бұрын

    +Игорь Власюк Игорь! Зачем? См. мою опубликованную программу для Maple в моей книге "Графы в Maple". В сети книга есть на eqworld.ru кажется

  • @igorek9191

    @igorek9191

    8 жыл бұрын

    +Kirsanov2011 спасибо, нашёл.

  • @APL375
    @APL37511 жыл бұрын

    не впадлу ж те было складывать)

  • @ivankumets4521
    @ivankumets45216 жыл бұрын

    ошибка в вычислениях садись два

  • @Kirsanov2011

    @Kirsanov2011

    6 жыл бұрын

    На какой минуте?

  • @aliyamaliya587

    @aliyamaliya587

    6 жыл бұрын

    Главное понятно как всё делать. А ошибки в вычислениях не важны, хотя я не проверяла, может их вообще нет

  • @user-jz6ug6do6g

    @user-jz6ug6do6g

    5 жыл бұрын

    любитель ловли мух

  • @Kirsanov2011

    @Kirsanov2011

    2 жыл бұрын

    Куда садиться? За что?!

  • @user-sd3jz9sq3d
    @user-sd3jz9sq3d6 жыл бұрын

    Очень сложно воспринимать таких преподов. Что то мямлит.

  • @Kirsanov2011

    @Kirsanov2011

    2 жыл бұрын

    Да, у меня есть недостатки. Буду преодолевать.

  • @aalex1812
    @aalex18122 жыл бұрын

    Спасибо!