Решение задачи коммивояжера. Часть 1
Задача коммивояжера. (Решение)
Из этой статьи вы узнаете об нахождении кратчайшего пути, проходя все точки графа и возвращаясь в исходную точку. Для решения задачи вам потребуется нарисованный граф и длины рёбер. Возьмём любую вершину, допустим “E“. Находим кратчайшее ребро, исходящее из этой точки. Как мы видим это ребро с длиной 3, но для нахождения кратчайшего пути в графе, мы не должны «перерезать» его, так как две стороны треугольника короче трёх. Поэтому мы это ребро забываем (сразу можно вычеркнуть рёбра со значениями 6, 8, 4, 2)...
Решаем задачу коммивояжёра как профи Задача коммивояжёра — задача комбинаторной оптимизации. Как правило, её суть сводится к поиску оптимального пути, проходящего через все промежуточные пункты по одному разу и возвращающегося в исходную точку. Чтобы значительно ускорить процесс нахождения решения можно воспользоваться метаэвристическими алгоритмами. Если вкратце, это такой метод оптимизации, который многократно использует простые правила для достижения субоптимального решения. В статье рассказали подробнее о том, что это такое. И реализовали на Python различные подходы к решению задачи коммивояжёра: https://tproger.ru/articles/metaevristicheskie-podhody-k-reweniyu-zadachi-kommivoyazhyora #задачки #python