Non-matching iteration numbers

Hi,

I am using the Learning Agents plugin and have extended the learning to drive tutorial into C++ and to add obstacle avoidance.

The simulation begins as expected with clear progress made, but after 5-10 minutes something falls out of sync and I get thousands of log warnings and errors. I have generalized the log output below, but I get one line for every completion/ reward/ observation/ action once the iteration desyncs.

LogLearning: Error: Agent Trainer: Completion “CompletionVar” for agent with id “n” has not been set (got iteration “N”, expected iteration “N+1”) and so agent will not have completions evaluated.

LogLearning: Error: Agent Trainer: Reward “RewardVar” for agent with id “n” has not been set (got iteration “N”, expected iteration “N+1”) and so agent will not have rewards evaluated.

LogLearning: Warning: Agent Trainer: Agent with id “n” has non-matching iteration numbers (observation: “n”, action: “n”, reward: “n-1”, completion: “n-1”). Experience will not be processed for it.

LogLearning: Warning: Agent Interactor: Observation “ObservationVar” for agent with id “n” has not been set (got iteration “N”, expected iteration “N+1”) and so agent will not have observations encoded.

LogLearning: Warning: Agent Interactor: Action “ActionVar” for agent with id “n” appears to have not been got.

I guess my question is how should I debug this, and is there a likely cause of this error?

I meet the same problem at “non-match iterration numbers” ,it turns out that one of my static array has 0 length at the begin(it would be fill at runtime), so it cast fail to gather info

1 Like

Can you please explain more? I’m facing the same problem for weeks and I really can’t find answers anywhere

Typically, you get this error message if any of your learning agent functions fail to populate all the fields in your model. For example, you don’t provide a valid observation during GatherObservations. You can usually tell which observation is broken because its iteration count is not increasing.

I will look into making this error messages more actionable and simpler to understand.