Closed DurgeshSamant closed 7 years ago
Since this PR may change the behavior of the high-level feature set, I'd like to get some feedback from @drallensmith and others using high-level features. Is it useful to detect a player without being able to see their unum? Low-level feature set has already filtered out players whose unums are <0.
Alright. Here is a full description of the behaviour as I understand it.
I propose that we keep 1 & 3 and do away with 2. I do so because in a game of soccer, it seems rather odd to be able to perceive position and shooting information without being able to perceive the identity of the player.
Here is a performance comparison of the average 'cumulative' goal scoring percentage obtained by the default sarsa agent with and without the proposed changes. Each number is averaged over 25 runs of 5000 episodes each
Case | Without | With proposed changes 1v1 | 88.48 | 88.38 1v2 | 52.21 | 52.37 2v1 | 90.11 | 89.78 2v2 | 61.15 | 61.26 3v3 | 27.00 | 26.46
So it does not seem to me that the proposed changes significantly impact the performance of atleast the default SARSA offense agent.
Can others kindly replicate and confirm?
In line with the convention adopted by the low level feature set, a teammate or opponent should - either or not - be completely observable [even when the fullstate flag is OFF].
Currently, quite often, an agent is able to observe the positional and other information of an opponent or teammate - however it is not able to observe its uniform number. Essentially it can sense [albeit noisily] the position of a player and yet be completely unaware of who that it. This should not be logically possible.
This PR fixes this issue in a way that is consistent with the approach adopted by the low level feature extractor.