Проблема заключается в поиске оптимального маршрута для самолета через четырехмерные ветра (ветра на разной высоте, которые меняются во время движения (предикативная модель ветра)).
Я использовал традиционный алгоритм поиска A * и взломал его, чтобы заставить его работать в 3-х измерениях и с векторами ветра.
Это работает во многих случаях, но очень медленно (я имею дело с огромным количеством узлов данных) и не работает для некоторых крайних случаев.
Я чувствую, что у меня это работает "хорошо", но это кажется очень смешным.
Есть ли лучший, более эффективный способ поиска пути по таким данным (возможно, генетический алгоритм или нейронная сеть) или что-то, чего я даже не рассматривал? Может быть, динамика жидкости? Я не знаю?
Редактировать: подробности.
Данные - векторы ветра (направление, величина).
Данные расположены на расстоянии 15x15 км на 25 различных уровнях высоты.
Под «не всегда работает» я подразумеваю, что он выберет тупой путь для самолета, потому что вес пути такой же, как у другого пути. Это хорошо для поиска пути, но неоптимальный для плоскости.
Я принимаю во внимание много вещей для каждого изменения узла:
- Стоимость подъема по убыванию.
- сопротивление ветра.
- Игнорирование узлов со слишком высоким сопротивлением.
- Стоимость диагонали тавель против прямой и т. Д.
Я использую евклидово расстояние в качестве эвристического или H-значения.
Я использую различные факторы для моего веса или значения G (список выше).
Спасибо!