Мне было поручено написать реализацию алгоритма A * (эвристика), которая решит проблему коммивояжера. Я понимаю алгоритм, он достаточно прост, но я просто не вижу код, который его реализует. Я имею в виду, я понял. Очередь приоритетов для узлов, отсортированная по расстоянию + эвристика (node), добавляет ближайший node к пути. Вопрос в том, что произойдет, если ближайший node не будет достигнут из предыдущего ближайшего node? Как на самом деле взять "график" в качестве аргумента функции? Я просто не вижу, как алгоритм фактически функционирует, как код.
Я прочитал страницу в Википедии, прежде чем публиковать вопрос. Неоднократно. На самом деле он не отвечает на вопрос - поиск графика - это путь, отличный от решения TSP. Например, вы можете построить график, где кратчайший node в любой момент времени всегда приводит к обратному выводу, поскольку два пути одинаковой длины не равны, тогда как если вы просто пытаетесь перейти от A к B, тогда два пути одинаковой длины равны.
Вы можете получить график, с помощью которого некоторые узлы никогда не достигаются, всегда сначала приближаясь.
Я действительно не вижу, как A * относится к TSP. Я имею в виду, найдя маршрут от А до Б, конечно, я понял. Но TSP? Я не вижу связи.