Jump to content

  • Log In with Google      Sign In   
  • Create Account


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


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
9 replies to this topic

#1 aofer   Members   -  Reputation: 140

Like
0Likes
Like

Posted 10 July 2012 - 07:56 AM

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

Sponsor:

#2 ApochPiQ   Moderators   -  Reputation: 14273

Like
0Likes
Like

Posted 10 July 2012 - 01:37 PM

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.

#3 aofer   Members   -  Reputation: 140

Like
0Likes
Like

Posted 11 July 2012 - 02:49 AM

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?

#4 ApochPiQ   Moderators   -  Reputation: 14273

Like
0Likes
Like

Posted 11 July 2012 - 03:01 AM

Sounds like it'd be a cool project. I say go for it.

#5 aofer   Members   -  Reputation: 140

Like
0Likes
Like

Posted 11 July 2012 - 04:09 AM

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, 11 July 2012 - 05:02 AM.


#6 ApochPiQ   Moderators   -  Reputation: 14273

Like
0Likes
Like

Posted 11 July 2012 - 01:48 PM

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 :-)

#7 aofer   Members   -  Reputation: 140

Like
0Likes
Like

Posted 12 July 2012 - 01:53 AM

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.

#8 ApochPiQ   Moderators   -  Reputation: 14273

Like
0Likes
Like

Posted 12 July 2012 - 11:39 AM

Good a place as any! :-)

#9 Jensecj   Members   -  Reputation: 187

Like
0Likes
Like

Posted 12 July 2012 - 05:52 PM

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 :).

Posted Image

#10 aofer   Members   -  Reputation: 140

Like
0Likes
Like

Posted 14 July 2012 - 12:58 AM

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 Posted Image
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

Attached Files

  • Attached File  mpas.zip   1.62MB   38 downloads





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS