Inhibition of return: do not propose the place you just looked at.
Mirrors tbp/monty/frameworks/models/salience/return_inhibitor.py::ReturnInhibitor.
A salience module's goals are where to look next, and without this it would keep
proposing the most interesting pixel of the last view — which is the one place it
has already seen. Each call records where the sensor was, weighs every candidate
location against every visit, and then ages the visits by a step.
Monty mutates the field; a struct here is a value, so a call answers both the weights and the inhibitor that produced them.
Summary
Functions
How much each of query_locations is inhibited, having just looked from
visited_location (nil when the middle of the view was not on an object).
Types
@type t() :: %Monty.Frameworks.Models.Salience.ReturnInhibitor{ decay_field: Monty.Frameworks.Models.Salience.ReturnInhibitor.DecayField.t() }
Functions
How much each of query_locations is inhibited, having just looked from
visited_location (nil when the middle of the view was not on an object).