Skip to content

Q&A of Single Player Learning Track

Raluca D. Gaina edited this page Feb 12, 2018 · 2 revisions

This page lists some Q&A of the Single Player Learning Track.


Will there be a deep learning library available in the machines running the learning track? Such as Tensorflow or DL4J?

Answer: TensorFlow has been installed for Python3.5 on the server machine.


On the website, you mention the agent has access to the game state. Does that involve the events that happen or only objects and their positions?

Answer: The game state include the same information as the StateObservation in the planning tracks except the events. The SerializableGameState.java can be found here.


During the validation, is there a limit to how much time can be taken per action (like the 40ms limit in the Planning track)? If so, is 'wait' or 'no action' a valid action?

Answer: During the validation, the time limits are the same as during testing, and the same as in the planning tracks. The legal actions are the same as in the planning tracks: ACTION_NIL, ACTION_UP, ACTION_LEFT, ACTION_DOWN, ACTION_RIGHT, ACTION_USE and ACTION_ESCAPE. Please refer to Types.java for Java Client or Types.py for Python Client.


The init function is called every single time the game starts not just one time after the construction of the agent?

Answer: The start method is called before every game. The init method is called before every level of the same game. Thus if you play a game during 5 mins for learning and some time for validation, the start will be called only once, and the init could be called many times.


Why there is two TestingLearningTrack.java files and have same everything. One is inside src/tracks/singleLearning/and the other inside clients/GVGAI-JavaClient/src?

Answer: The reason there are two TestLearningTrack.java files is the fact that you can launch the connection from both the client and the server side, but running from the server side is only useful for us. Should you choose the former, a server instance will be opened in a local process and the client will connect to it. The latter is the exact opposite: the server compiles the client binaries and executes its commands. Both files work correctly on both Unix and Dos-based systems (tested with Linux, IOS and Windows 10).


I added the code to eclipse IDE, I even listed the GVGAI-JavaClient/src as build path and then followed the online instructions and after lots of modifications for paths and other stuff I got “Server process started [OK]” on the console. So I checked the text files in the log file for errors and I found “Error: Could not find or load main class tracks.singleLearning.utils.JavaServer” this error.

Answer: If this happens, probably you are using Eclipse, please refer to How to test.


For more information, please check:

Single Player Learning Track Specifications

Create an agent

Test an agent

Table of Contents:

Clone this wiki locally