-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
96b537e
commit 7c484f2
Showing
2 changed files
with
74 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
\section{Results} | ||
To evaluate the performances of our implementation, six different maps were used and each of them focuses on a different facet of the problem (e.g. map structure, parcel rewards, etc.). The tests were conducted by running our agent on each map for five minutes and reporting the final score. It is important to note that this score is only an estimate as both the condition of the map and the behaviour of the agent have a stochastic component to them and thus are not perfectly reproducible. | ||
|
||
\subsection{Single Agent} | ||
The evaluation for the single agent was carried out on the following four maps. The results on all of them are shown in Table~\ref{tab:single_agent} together with the scores achieved by the \texttt{BenchmarkAgent} provided by the course lecturer. | ||
|
||
\paragraph{Challenge\_21} Challenge with the simplest map, consisting of a fully connected square map with non-decaying parcel rewards. Moreover, the map is characterized by a high number of randomly moving agents and a low agents observation distance. | ||
|
||
Due to the number of available tiles, the initial precomputation of the distances between any two tiles is quite noticeable and takes several seconds. Nevertheless, the speedup in the planning phase more than makes up for this initial time loss. | ||
|
||
Sometimes it may also happen that the agent performs sub-optimal actions such as ignoring parcels even if they are very close to the path it is already taking. This stems from the fact that the parcels' scores don't decay and thus the agent has no incentive to change the intention it has previously computed to include a new parcel when it can simply collect it later and incur in the same reward. | ||
\paragraph{Challenge\_22} Challenge characterized by a large number of parcels with a small average reward and a fast moving agent. | ||
|
||
This map is quite challenging as the rate at which parcels spawn and then die is very high. Moreover the agent is able to see up to a large distance and move fairly fast. This leads to having a lot of parcels that have to be taken into account at every point of the game and the mcts planner is not always able to keep up with the frequent changes and come up with the best plan that considers all parcels. In order to at least partially mitigated this problem, each time a parcel expires or is picked up by another agent, the mcts tree is pruned and that parcel removed from all paths where it was previously considered to reduce the size of the tree. | ||
|
||
% By examining the agent behaviour when it is running it is easy to see that the behaviour of the agent is much more sensible in areas with few parcels than other, more dense, areas | ||
|
||
\paragraph{Challenge\_23} The map is characterized by narrow paths with many other agents moving in them, a limited number of available parcels at any time but with high rewards and an high parcel observation distance. | ||
|
||
This tests how well an agent is able to navigate its surrounding environment and either modify its path to take into account the obstacles that are other agents or drop an intention all together to pursue a more promising one. | ||
|
||
|
||
\paragraph{Challenge\_24} This map differs from the other previous challenges because parcels are able to spawn only on some of the tiles and can be delivered in a single far away position. | ||
|
||
Since the parcel observation distance is quite small, this challenge puts to the test the agent's ability to explore a map even when it isn't able to see any parcel. However, our solution exploits the spawning tiles to compute the promising positions to move towards which means that it performs well in this setting. | ||
|
||
Due to the nature of our implementation, the main drawback is that once a parcel has been collected the agent promptly takes the shortest path towards the delivery position and therefore isn't able to observe any other spawning tile until after the parcel has been delivered. This continuous back and forth between one of the spawning tile and the delivery position could lead to a smaller reward than taking a longer path to reach a parcel but with a chance of seeing some other spawning tiles and collecting more parcels in the meantime. | ||
|
||
|
||
\begin{table} | ||
\centering | ||
\begin{tabular}{c || c c} \hline | ||
& Benchmark & Our Solution \\ \hline | ||
Challenge 21 & 90 & 350 \\ | ||
Challenge 22 & 6 & 613 \\ | ||
Challenge 23 & 698 & 3219 \\ | ||
Challenge 24 & 637 & 1470 \\ \hline | ||
\end{tabular} | ||
\caption{Scores for the single agent maps} | ||
\label{tab:single_agent} | ||
\end{table} | ||
|
||
|
||
\subsection{Multi Agent} | ||
The evaluation for the multi-agent implementation was carried out on the following three maps. The results on all of them are shown in Table~\ref{tab:multi_agent}. | ||
|
||
|
||
\paragraph{Challenge\_31} The map is designed with vertical lines connected by an horizontal corridor. Both delivery and spawning tiles can be found at the ends of the vertical lines. | ||
|
||
This challenge is complex due to the high number of parcels seen at any time, similarly to challenge\_22, but with the added difficulty that the parcels are viewed by two different agents and therefore the information about them is shared asynchronously. | ||
|
||
Because of the dynamic nature of the environment, the agents often change their intentions and the parcels they are going to pick up. This sometimes leads to agents starting to move towards their intention only to then receive a message from another teammate stating that it has a better score for that same intention forcing the agent to drop its intention. This may result in the agents moving back and forth constantly switching their intention while not being able to make any progress. | ||
|
||
\paragraph{Challenge\_32} This challenge has a unique configuration with vertical, separate lines with a spawning tile on one end and a delivery tile on the other and it tests the ability of the agents to effectively coordinate and collaborate to exchange parcels. | ||
|
||
This map is where the ignore message described above is mainly used in order for the agent closer to the spawning tile to drop its parcels so that the agent closer to the delivery tile can successfully deliver them. | ||
|
||
Another possible scenario is for the two agents to spawn in separate lines but this is less interesting because, while still sharing information about the position of parcels, there is no explicit need for coordination. | ||
\paragraph{Challenge\_33} The map's design is similar to that of challenge\_31 but this map is divided in two, non-communicating, halves and the horizontal corridor connecting them is tighter. | ||
|
||
While no direct mechanism to prevent the agents to block each other when moving in narrow corridors was implemented, we observed that this didn't happen frequently enough to hinder the performances of our solution. Even when this did happen the agent would simply select another parcel to pickup, if any was available, or exchange parcels with the other agent if no other action was possible. | ||
|
||
\begin{table} | ||
\centering | ||
\begin{tabular}{c || c} \hline | ||
& Our Solution \\ \hline | ||
Challenge 31 & 1352 \\ | ||
Challenge 32 & 5473 \\ | ||
Challenge 33 & 1938 \\ \hline | ||
\end{tabular} | ||
\caption{Scores for the multi-agent maps} | ||
\label{tab:multi_agent} | ||
\end{table} |