**Update:** I recorded a video lecture on this topic:

The slides are at https://github.com/ctrl-z-9000-times/KropffTreves2008_reproduction/blob/master/grid_cells_presentation.pdf

**Update:** I recorded a video lecture on this topic:

The slides are at https://github.com/ctrl-z-9000-times/KropffTreves2008_reproduction/blob/master/grid_cells_presentation.pdf

9 Likes

I’ve implemented this several times, but I may not have a code solution ready for you to use:

- Python NuPIC, shown on slide 13, SP augmented for grid cells is available at https://github.com/ctrl-z-9000-times/KropffTreves2008_reproduction
- Python HTM (implemented from scratch) for slide 17, Experiment for L2/3 is available at https://github.com/ctrl-z-9000-times/sdr_algorithms
- C++ HTM.Core has an experimental branch with Grid Cells. But I’ve given up trying to merge this branch into the master, so use it at your own risk. https://github.com/htm-community/htm.core/pull/285

@dmac thanks for your information. Unfortunately i Did not find any branch named GridCells. Maybe it is ColumnPooler2?

Could you pls check it again?

Where is your demo with Mnist?

Yes, the branch is named “columnPooler2”. I linked to its PR in my previous response.

I have demonstrations using MNIST, but they are not related to this topic.

https://github.com/rogerturner/HTM-scheme/tree/master/projects/KropffTreves2008_reproduction is a HTM-scheme translation of @dmac’s code (so a replication^{2} of Kropff & Treves 2008 )

One small change is to increase coordinate encoder radius and width every 50000 cycles (see grid_cell_demo.ss lines 193-201). Results after 200,000 training iterations appear similar to @dmac’s (trained for 1,000,000 iterations).

1 Like

bump

@dmac Very nice explanation, i was struggling with lot of things that was covered with this. Thank you so much for this video !

1 Like