Description of Tile Coding
This is an implementation of grid-style tile codings. Here we provide a procedure, "getTiles", that maps real
variables to a list of tiles.
Please see http://www.cs.umass.edu/~rich/tiles.html for more information.
Description of bindings
The "getTiles" function is exposed to Matlab through the MEX (Matlab EXecutable) API. Requires a system with a C compiler (see "doc mex" in Matlab for more information).
I have followed these instructions to surmount the gcc version: http://askubuntu.com/questions/75012/how-do-i-install-gcc-4-3
But running in Matlab:
variables = 0.25*ones(4,1);
numTilings = 32;
memorySize = 4^4*numTilings;
tiles = getTiles(variables, numTilings, memorySize)
it outuputs this error:
??? Attempted to access getTiles__rndseq__(449); index out of bounds because
Error in ==> getTiles>hashCoordinates at 70
sum = sum + getTiles__rndseq__(floor(index));
Error in ==> getTiles at 50
tiles(i) = hashCoordinates(coordinates,memorySize);
Indeed getTiles__rndseq__is a scalar equal -1.4845e+09.
Does it make any sense?
Hi, I am sorry, but I have not figured how to use your Tile Coding functions. I am able to compile the c file and get the mexa64.
However I do not understand well how to use it. I am lacking some understanding of the input variables.
For instance, where do I set the width of the tiles, perhaps indirectly based on the number of tilings and the total number of tiles?
Where do I set the range of values to grid?
Can I set the displacement vector?
How can avoid hashing if my system is plenty of memory but I want to increase speed?
Thank you very much in advance!!!