Application of imitation learning to football (soccer) video game.
First, navigate to the football directory with cd football.
To install the required dependencies and build the environment, run
pip3 install -r requirements.txt
pip3 install .
To execute the AI in the environment and collect episode data, run python3 execute_ai.py SCENARIO REPRESENTATION ACTION_DATA_FILE_NAME >> ACTION_DATA_FILE_NAME'. where SCENARIO is the scenario the AI is executing in, REPRESENTATION is the observation type (raw, pixels, etc.), and where ACTION_DATA_FILE_NAME is the file to which action data will be written to by redirecting STDOUT.
The episodes (states and corresponding actions) for this execution will be stored at episodes/episodes_SCENARIO_TS.pkl, respectively, where TS is the ending timestamp of the execution in seconds from epoch time. The file to which action data was written to, denoted by ACTION_DATA_FILE_NAME, can be deleted.
The following is an example of how to execute the AI in the environment and collect episode data.
python3 execute_ai.py 11_vs_11_stochastic raw ad.csv >> ad.csv
The episodes for this execution will be stored at episodes/episodes_11_vs_11_stochastic_TS.pkl, where TS is the ending timestamp of the execution in seconds from epoch time.
To run training and validation, run
python3 train.py --env_name ENV_NAME
where ENV_NAME is the name of the environment/scenario (e.g. academy_empty_goal_close).
The number of validation episodes, max length of each test episode, directory with the expert data, number of epochs, and batch size can be set using the flags num_episodes_val, episode_len, data_dir, num_epochs, and batch_size, respectively.
At the moment, the assumption is made that the agent will control the left team.
If pixels or pixels_gray is selected as the observation type, the execution will be rendered and displayed.
We are using the Google Football Research environment.