Алгоритм А* (), насколко я определил, является самым гибким. Его описание и реализации посмотрите здес:
http://www.geocities.com/jheyesjones/oldastar.html
Если условия прохождения обьекта однородные — то быстрее будут работать специальные алгоритмы. Я могу кинуть их описание вам, если нужно. Мне самому понадобился именно А*.