With the need for an agent to remember key scenes in the environment for navigation, recent work has consisted of implementing a means of identifying and handling goals and including them within snapshots taken. These goals are only added to the snapshot if the current location contains the goal reward, giving the snapshot a reward rating. This was needed in order to see the effects of using the snapshots to find the next goal.
After implementing these changes, a key limitation was highlighted: snapshots are direction dependent. This means the agent needs to ‘rotate’ the snapshot scene to compare with the current scene. This is potentially where path integration would come into play: as the agent moves out from the home location, snapshots are taken as goals are located, then path integration is used to calculate the return direction and distance to travel, as per biological studies.
Thinking about the snapshot process, it is currently too basic to be of adequate use by the agent. One idea is to break the scene down into chunks, which are then processed as nodes using chunking methods. Each node could be represented by an auto-associative neural network, allowing for several patterns to be stored against each node, possibly reducing the amount of memory needed. This may not be easily achievable in NetLogo and may need to be considered for development on another platform, such as Mason. However, it may need to be a post-project investigation due to the learning curve of both the platform and the concept.
With the prototype development period supposed to have finished, and with so much yet to investigate, the objectives of the project have changed slightly to take the prototype as far as possible, in an effort to understand the requirements better and how to approach the problems. As such, the following week shall entail:
- Implementation of path integration processes
- Improvement of snapshot handling for navigation
- Re-factoring code for both simplicity and re-usability