First commit of HTM with qt
New PyQt GUI and first viewing of the temporal pooler.
There are still major bugs with the temporal pooler as the time steps
haven't been implemented yet.
Begining to add time steps to the temporal pooler functions.
Added timeStep implementation needs testing.
Bug fixes for temporal pooler. Some predicting now occurs. Synapses are never
deleted once created and they quickly fill the activeSynapse array. The
adaptSegments needs to be fixed.
Updated activeSynapses list to synapse list for each cell.
The temporal pooler shows signs of predicting correctly.
updated temporal pooler bug with getBestMatching cell incorrectly choosing the
cell with the largest number of segments.
Temporal pooler basic functionality works. There is still issues such
as multiple cells in the same column predicting and the context loop closing
needs investigating.
Fixed bug where a few inactive columns sometimes where displayed as active.
Fixed the prediction stage. Now only one cell per column can be predicting.
The cell with the most number of synapses predicting will be set as the
prediction cell for the column.
Converted the HTMInput class for the HTM_qt to use a QGraphicsScene which
will enable cells to be selected in the future.
Added a python line pattern creator to create different line pattern Inputs.
Converted the HTM_Input and HTMViewer widgets to use a QGraphicsViewer.
This allows the objects to be selected and currently info printed.
The HTMViewer needs to implement slots so the items can communicate back to
the HTM network.
Added functionality to display a clicked cells synapses on a selected segment.
Fixed an issue with temporal pooler. The getBestMatchingCell wasn't being
called for the correct timeStep.
Added clickable columns to view there synapses. The temporal pooler needs
work still. It doesn't learn the current pattern ABBCBBA
Added a list to remember more than the last timeStep for the
predictiveStateArray learnStateArray and activeStateArray.
Changed back to using the active state to initiate predicting cells.
The HTM now successfully learns sequences such as ABBCBBA.
The decrementing of the cells still occurs too often this needs to be
fixed.
Minor print fixes. The current temporal pooler doesn't close loops
automatically. It only does so when forced to by the fact that no more unused
 cells are available. To Fix this I will begin adding the multiple
sequence prediction method that will choose the correct learning cell
when all the cells in a column are actived from an unpredicted pattern.
 This will done in the next version V13 of HTM.
Added a new version with an experimental alternative sequence searcher.
This code gives each cell in an active column a score based on how closely
it's own sequence matches the input pattern. If a pattern falls out of
sequence and another pattern matches the current input with a large enough
score (the larger the score means the alternative pattern started longer
ago) then this pattern will be chosen as the learning and active pattern.
eg If pattern ABBCBBADDEDD is currently active and the next input is an F then
 instead of the F column bursting previous patterns are searched. If the
pattern DDEDDF was also previously learnt then the F columns would burst and
the cell from the F columns matching the DDEDDF pattern would be set as active and learning.
added a bouncing ball test. The temporal pooler works fine as long as the
ball is large enough to activate enough cells. Just change the configuration
parameter activationThreshold
First commit of HTM simple poker.