Problem Set 6 (4.6 - 11.6.07)
In this exercise we want to use some of the techniques we implemented in previous exercises to create place cells.
- We start by implementing a random walk in a rectangular room. To encode a position in the room use the x and y coordinate. Try to simulate the movement of a mouse in this room by creating a random path.
Implement some kind of inertia, to make the path more realistic (e.g. by taking random speed vectors and interpolating between them). To simplify the problem you can assume that the mouse bounces of walls (e.g. by mirroring the speed vector when it hits a wall).
- Add a sensory stage on top of the coordinate data from the random path. To keep this as simple as possible use a random linear mixture with some random data. You can use a redundant number of mixed channels (in a more realistic simulation these could represent single pixels).
- Now we want to extract place cells from our data. To do so first use linear SFA to extract the two slowest channels, which should represent the coordinates again. Now use hard competitive learning to train a set of reference vectors on this data. After the learning these should act like place cells.
- Visualize your results by plotting the receptive field of the place cells. Take sample points which cover the room nicely and calculate the place cells responses.
Note that simply plotting the reference vectors is in general problematic, since in more realistic models the extracted coordinates after the sensory stage may differ from the original coordinates (e.g. because of noise).