Open mellertson opened 6 years ago
@scottpurdy Can you read this issue and tell me what you think before I spend time on it?
@rhyolight yeah looks like that functionality is broken which isn't surprising as no one has used it in a while. Would be nice to fix but make sure you don't change behavior of models not using it.
Out of curiosity, is it something amiss in the C-bindings? I ask so that in the future I know better where to look and hopefully lend more of a hand to fixing things rather than just reporting them.
I posted this issue on the HTM Forum. Matt suggested posting it here, so here it is:
Issue
I’m trying to set globalDecay and maxAge to a value greater than zero in a TMRegion. But I keep getting an AssertionError.
I looked at these docs, and they say that maxSynapsesPerSegment and maxSegmentsPerCell must be set to -1 to disable fixed-sized CLA mode, but setting those two parameters don’t seem to correct the problem.
Does anyone know how to set globalDecay and maxAge to values greater than zero?
Here are the parameters and the call-stack:
Work Around
I just did some debugging into the nupic library, and discovered in backtracking_tm_cpp.py on line 109, default values for maxSegmentsPerCell and maxSynapsesPerSegment are set to -1.
Additionally, when debugging I see the value of both maxSegmentsPerCell and maxSynapsesPerSegment are 4294967295 which is the maximum value for an unsigned int in C. It seems like there might be a problem with the C bindings converting the values input into the model params file, model.yaml, into an unsigned int, but should be converting it to a signed int.
At any rate, commenting out the following two lines from models.yaml works around the issue: