Sign in to follow this  

Is there a framework or a simulator for implementing and profiling AI path finding algorithms?

This topic is 2012 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi, I was wondering if there's a framework that you can use to test existing path finding algorithms and implement your own algorithms and have them measured for efficiency/see the returned paths.
I'm especially interested in something that can test multi-agent algorithms (for example multi-agent A* or Cooperative A*).

I'll try to be a bit clearer in case I was being to abstract.
such an application would require me to implement a certain interface for returning the list of nodes and maybe send events in order to display the progress of the algorithm interactively.
then the framework will be able to run my code, display the result (for example, show the path or display an animation of the moving units) and measure the time that it took the algorithm to run and how much memory it used.

Do you know of anything that might be similar to what I'm talking about?

Thanks,
Amit Ofer

Share this post


Link to post
Share on other sites
I'm not aware of any existing tools like this that are publicly available, but you should be able to roll your own in a few hours if you're comfortable with any existing 2D graphics library and basic UI implementation.

Share this post


Link to post
Share on other sites
The reason I'm asking this is because I created such a tool a year ago as my 4th year university project.
It was implemented in java and had 3 different algorithms.
I thought the idea was kinda cool but when I look at it now (especially with 1 year in the software industry) the UI can be improved for better usability and there are some features that its missing and the code could be improved.

I thought about taking this project and re-implementing it, not necessarily in java.
I wanted to know if this is something that might be useful to others.
The plan was to do it as an open source project and to make the framework as easy to use as possible for algorithm developers to implement an algorithm and watch the results and see the performance on pre loaded maps.
my original project used grid maps, I thought about adding geographic maps (which was one of the original goals of the project that we eventually had to omit)
so what do you guys think?

Share this post


Link to post
Share on other sites
what do you think would be the best programming language for implementing the algorithms.
I thought about maybe instead of java, add support for LUA for example.
And do you think it something worth putting on my portfolio when applying to a game programming job? Edited by aofer

Share this post


Link to post
Share on other sites
I don't really think the implementation language is all that interesting, honestly. What you'll care about in such a demo is twofold: first, you want to know how the various algorithms behave; and second, you want to know how they compare. Everyone will have a preference on what language they want to write their code in, so IMHO you're best off just picking one and going with it. If you're interested in a challenge, definitely see if you can hook up something like Python or Lua to your tool. That'll definitely be a good experience.

If you do a good job and publish solid open-source code, you should definitely put it on your portfolio :-)

Share this post


Link to post
Share on other sites
ok, thanks.
Is this a good place to upload my project to get critics.
I wanna show the current version that I made a year ago in order to understand what I should do better in the new version.

Share this post


Link to post
Share on other sites
I implemented something like this for my algorithms class concerning path finding earlier this year, completely done in C#, I'm sure it still needs a lot of work, on both the UI side as well as with the implementation details of the algorithms, I got it working pretty well with 150 000 nodes in a square grid and in a hexagonal grid, had a pretty fun time doing it :).

[url="https://dl.dropbox.com/u/568812/Projects/%21Pathfinding/SquareGridPathFinder/13-07-2012/Capture.PNG"][img]https://dl.dropbox.com/u/568812/Projects/%21Pathfinding/SquareGridPathFinder/13-07-2012/Capturethumb.jpg[/img][/url]

Share this post


Link to post
Share on other sites
OK, this is the project at its current version.
I think its a bit broken at this stage, I noticed a scenario in one of the algorithms when the two vehicles collide so one of the algorithms might be buggy.
But the point is actually the environment and not eh specific algorithm.
I know the UI is shitty, but in my defense I was in charge of the framework and algorithms, my partner did the UI [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]
I provided a user manual, it might help if the UI isn't clear enough.
There's also a problem with the color configuration file, it has to be inside \jar-location\src\resources\ in order to work (otherwise you won't get colors for the car icons).

Anyway any comments and critics about this applications, from UI to features would be highly appreciated.
I intend to rewrite most of the code here if not all of it.

Thanks in advance

Amit

Share this post


Link to post
Share on other sites

This topic is 2012 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this