В настоящее время я реализую алгоритм поиска A * в моей программе поиска путей.
Я успешно реализовал поиск A * с минимизацией числа оборотов.Тем не менее, я хотел бы, чтобы ход был раньше, чем позже.
Чего я достиг:
Желаемый:
Может кто-нибудь дать мне подсказку о том, как сделать эту работу?
Обновление:
Я пытался изменить свою функцию стоимости, как показано ниже.
fCost = gCost + hCost + M * витков * gCost
fCost - общая стоимость, используемая для минимальной кучи в openList
gCost - стоимость текущего узла изorigin
hCost - эвристические затраты для текущего узла из пункта назначения
M - небольшое число в виде константы
витков - число витков, начиная с начала
Однако, похоже, оно неРабота.Может ли кто-нибудь указать мне, если я что-то упустил?