На графике мне нужно найти кратчайший путь между двумя точками и по пути посетить один контрольный пункт. Кроме того, я могу посещать каждую вершину только один раз. Полагаю, что это связано с сетевым потоком, но я не знаю, как это реализовать.Самый короткий путь между тремя точками
ответ
Вы можете смоделировать его целиком как проблему с минимальными затратами на пропускную способность с несколькими продуктами. Вы хотите перейти от A к B через C, не используя двойную вершину дважды. Вы можете моделировать его как поток от A до C (товар 1) и поток от B до C (товар 2). Чтобы избежать одновременного использования узла, вам необходимо выполнить следующий трюк на всех ваших узлах (в вашей модели):
Для узла X с входящими и исходящими краями p вы создаете новый узел Y и переустанавливаете ссылки. Все входящие ссылки p все будут поступать в X, q исходящих ребер все отклоняются от Y. Добавьте только 1 ссылку (L) из X в Y. Установив пропускную способность L-link на 1, каждый узел будет использоваться только один раз.
Затем вы можете записать его как (M) ILP и решить его. ILP предоставит вам правильное решение, если оно существует. В зависимости от вашего приложения это может быть излишним. Если вам нужна быстрая эвристика, просто используйте 2 A * поисковые запросы и надейтесь, что они не перекрываются.
- 1. Самый короткий путь между двумя точками двоичной матрицы
- 2. Самый короткий путь между двумя точками в взвешенном 2d массиве
- 3. Рассчитать самый короткий путь между двумя точками геометрии?
- 4. Самый короткий путь Алгоритм
- 5. Самый короткий путь между двумя адресами
- 6. Самый короткий путь между связанными парами кортежей
- 7. Самый короткий путь между двумя узлами Trie
- 8. Самый короткий путь между двумя матрицами
- 9. Самый длинный путь между двумя точками
- 10. Как обеспечивается самый короткий путь в IRC?
- 11. R, определить самый короткий путь
- 12. Пользовательская карта Самый короткий путь
- 13. Найти самый короткий путь или самый быстрый путь
- 14. Самый короткий путь с препятствиями
- 15. Самый короткий путь к цели?
- 16. Самый короткий маршрут между локациями алгоритм
- 17. Compute самый короткий путь с точно `n` узлов между двумя точками на meshgrid
- 18. Пролог: Самый короткий путь для рыцаря
- 19. neo4j uni directional Самый короткий путь
- 20. Самый короткий путь с максимальным числом вершин
- 21. Neo4j: Самый короткий путь на основе свойства
- 22. Самый короткий путь igraph на R
- 23. Самый короткий путь алгоритма Floyd-Warshall
- 24. Самый короткий путь для посещения всех узлов
- 25. Простой путь между точками
- 26. Самый короткий путь для A Dag
- 27. Самый короткий путь алгоритма динамического графа
- 28. Самый короткий путь Дэйкстры-Хакер-Рейн
- 29. Самый короткий путь между двумя узлами в графике (Java)
- 30. Самый короткий путь между несколькими местоположениями в MKMapView
Проверьте алгоритм A *. –
Извините, я не могу дать вам больше, только эта ссылка http://en.wikipedia.org/wiki/A*_search_algorithm, здесь вы можете найти пример реализации. –
спасибо, но ничего о контрольной точке нет, если я найду самый короткий путь между стартом и контрольной точкой, это может заблокировать мой путь до конца. – Kamgar