[WIP] [Fix] Fixing collect observation called on done #5375
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Proposed change(s)
@ervteng noticed that "If you put a GoalSensor/VectorSensorComponent on a dodgeball agent, and add to it in Collectobservations, it will throw a warning when the agent dies"
Investigation showed that the code
is problematic when using a VectorSensor because only the
collectObservationsSensor
will be reset BUT both the VectorSensor andcollectObservationsSensor
will have new observations (because CollectObservations is called).The proposed solution is to replace the call to
collectObservationsSensor.Reset();
withUpdateSensors
which is what we do inSendInfoToBrain()
already. We also remove the checkif (collectObservationsSensor != null)
because there could be a Vector Sensor without acollectObservationsSensor
.I also modified the test of the stacking sensor to fit this new logic.
Useful links (Github issues, JIRA tickets, ML-Agents forum threads etc.)
Slack message
Types of change(s)
Checklist
Other comments