Cognitive / spatial mapping prototype #1
27 Nov 2008, 12:01 PMI was able to get the Cognitive Mapping prototype #1 (mentioned in the previous post) working fairly easily. A lot of assumptions were made (such as assuming a perfect vision system was available etc.) in getting the demo working, but the underlying idea of associating landmarks and features to learn and in turn, use that to navigate, worked well (in an oversimplified way, of course).
The CONTROL module is complete symbolic where as all other areas are neural nets composed of (fLIF neurons).
The vision system can be considerd as an example for the height of over simplification. There is the RETINA that is hardwired to recognize doors,walls and rooms, directly interfacing witht the symbolic CONTROL with no Visual Cortex whatsoever.
The RETINA has connections to a COLOURS network which enables it to identify three colours (red,green,blue), which in the simulation, are the colours of doors.
The KNOWN OBJECTS network has three pre-known concepts (door, wall, room) which gets excitation directly from the RETINA, when ever it sees one of those objects.
The NEW INSTANCES network is blank to begin with and that is where rooms and door-colour associations are stored as the bot explores the world and spots new rooms.
- There are only two rooms in the simulation, separated by a red door
- The bot starts in room1 in exploration mode
- It keeps moving forward until it comes across a door
- When it passes through a door, it knows that (symbolic) it just came from a room, passed an X coloured door and is right now in a different room
- Then it learns this as a new instance and stores it in the instance net. previous_room+door_color+current_room
- There goes the most basic form of spatial mapping!
- The bot keeps moving until it reaches the end of the next room, then it switches to the navigation mode (symbolic)
- In the navigation mode, the bot is instructed to go to room1 by explicitly stimulating the pattern corresponding to room1 which it learned and stored in the INSTANCES net
- So, when room1 in the INSTANCES net is stimulated, room2 and door-colour come on as the bot has learned that association (step 5)
- The bot records the door-colour that just came on, now it knows that what ever door has that colour, leads to the target room
- The bot simply goes looking for the target colour (in the test's case, Red), passes through it and yes!
Currently, I am working on better cognitive mapping prototype which involves four rooms (could be N rooms), sequential memory and removal of whatever possible symbolic links.