the mpas project multi-agent pathfinding algorithms simulator
DESCRIPTION
Application Design Document - ADD Technical Advisor : Mr. Roni Stern Academic Advisor : Dr. Meir Kalech Team members : Amit Ofer Liron Katav Project Homepage : http://mpasproject.weebly.com. The MPAS project Multi-agent Pathfinding Algorithms Simulator. - PowerPoint PPT PresentationTRANSCRIPT
The MPAS project Multi-agent Pathfinding Algorithms Simulator
Application Design Document - ADD
Technical Advisor : Mr. Roni Stern Academic Advisor : Dr. Meir KalechTeam members :
Amit Ofer Liron Katav
Project Homepage : http://mpasproject.weebly.com
Reminder : project’s goal Our Project’s goal is to develop a simulator that
will help to observe the different behaviors and compare the performance of various multi-agent pathfinding algorithms.
The algorithms we will implement: A* - MultiAgent Version. Cooperative A* , Silver Hierarchical Cooperative A* (HCA*) , Silver, D. Cooperative PathFinding (ID + OD) , Trevor.
Use cases – Grid maps
Use cases – Geographical maps
System architecture
Algorithm Layer
Graphical User
Interface(GUI) Layer
Controller Layer
-Method Invocation-Events
User Gestures
ViewChanges
Input
State Change
Class diagram
Class diagram (cont’)
Graphical User Interface
Overview of the user interface
Change the size of the grid
Generate random agent’s positions
Change number of agents
Generate random map
Load/Save maps and sceneries
Finding a path
Changing allowed directions
Running the algorithm in steps
Testing
Non-functional requirements Testing
Speed we will measure by timer the time it takes to load the application. In order to test that the system produces output in less than 15
minutes we will wrap the algorithms with timers.
Capacity We will run the simulation with different *.map files contains up to
100 agents and 100*100 grid size and check they loaded correctly.
Reliability The system should be able to detect when a corrupted file is
loaded and alert the user :we will produce corrupted input files and run the software on them to see if the system alerts the user.
We'll test the system with boundary and illegal inputs. For example - undefined cell on the grid as input for agent position
Non-functional requirements Testing
Usability We will deliver the prototype of the simulator to the users and
examine their time to learn the system. We'll tests that the use of the system isn't difficult or unclear by
letting users to use it. We will test the user's response to the GUI, and see if the system is
comfortable.
Availability We'll Measure the response time of the system (with a timer).
Functional requirements Testing
We used JUnit in order to test the functional requirements: Choose the size of the grid map, and the number of agents. Load grid maps. Save grid maps. Clear map. Sets the starting and finishing cells for each agent. Set blocking cells. Choose the algorithm to be tested. Choose the heuristic to be used. Start the simulation. Stop the simulation. Running the simulation Step by step. Generate random scenario.
Task list
Uncompleted tasks.
Finish the simulator infrastructure and GUI.
Implement the 2 remaining algorithms.
Add performance measurements. Add more features. Add more animation abilities &
graphics. Add geographical map support (if we
have enough time) User manual and other documents.
Time table
Issues on GoogleCode
The End
Thank you for listening