I have tried to implement A* and JPS algorithms, written some JavaDoc and tests.
About different Heuristics and their use.
I'm not sure if A* is actually really slow in 500x500 spaces or is my algorithm just running very slowly. If I disable backtracking, A* will work at super speeds, but paths are not optimal. Maybe I should reduce the map sizes even further. Maybe the problem are tiebreakers?
For now i have reduced the map size to 150x150, A* works on it quite well most of the time. Sometimes JPS can finish a route in 15ms where as A* has been running 10 seconds.
Edit 30.3:
- A* was running slow because it seems I made a mistake with the hashing and HashMap didn't work as intended. Problem did not appear in tests. Now I can finally concentrate on JPS and IDA*.
I have to continue to implement IDA* and my own data structures even though I'm not sure if A* is still working like it should.