- 8.0.3 was released Nov 9, 2016 as a beta release, overall compatible with 8.0.1
- 8.0.4 was released Jan 12, 2017 as a full release containing one main important change to the Leabra Hebbian learning algorithm.
- Important fix to Windows performance: threading was really slow due to a usleep call used in syncing -- removed this for all platforms -- could be small performance improvement on all platforms, and drastic improvement on windows.
- Windows version of ODE physics simulation system was also not working properly, preventing the VEWorld virtual environment from working properly -- now fixed. Updated the
EmerMiscLibs-msvs2015-64.zippackage -- grab new one if you are building from source on windows: Build Windows
- Windows was not able to record averages in NetMonitor -- due to an obscure function overloading problem -- now fixed.
- New editing feature - inline code editing now drops a list of possible completions (variables, types, program elements, functions, etc) that match what you are typing.
- Tab to extend to the first character that distinguishes the choices
- If the list gets pared to a single item Tab will select it
- Highlight any item in the list using the down/up arrow keys (also ctrl-N and ctrl-P for down/up) and press Tab to select it
- To see an unfiltered list at line start type ctrl + space
- Lookup showing you a list of completion choices in a modal dialog is still available - ctrl + 'L'
- Leabra Hebbian learning algorithm was updated to use a simpler running average of gain-multiplied activation, instead of the thresholded activation that was used previously -- this works significantly better on a number of different projects. See the LeabraUnitSpec avg_l parameter for more information.
- set DataTable editor row height in terms of number of lines of text per row (or auto resize to contents), and all columns are now auto-sized to contents up to max_col_width (DataTable member, defaults to 50). To manually resize a column, first use the context menu Set Column Width action to "unlock" it from being auto-sized. Then usual gui sizing works. Except if you want to go larger than the current max_col_width, in which case you need to use the context menu (which will auto-increase the max to fit new col width).
- added taDataGenSem for generating semantic patterns based on a target distance matrix (e.g., from LSA)
- in taMath_float and taMath_double -- added lots of vec_* functions that perform basic math on each element of a vector / matrix (e.g., vec_cos, vec_exp, etc)
- taDataAnal added ANOVA (one way and n-way) -- convenient for many types of data analysis, both on model results and also for nature of representations
- fixed synaptic current integration over time window in Leabra for spiking nets -- key fix to allow spiking to actually work -- hadn't been updated since change to vectorized threaded memory layout -- requires a fixed max size for the window (currently 10).
- also Leabra I_net is reset along with v_m during spiking -- no functional change but graphs look a lot better (esp when refractory period > 0)
- fixed MAX_POOL function in Backpropagation -- activation function wasn't working. And SOFTMAX only works with err_tol = 0 -- now enforced in UAE code.
- Network SaveWeights doesn't save weights for ConGroup's that have shared weights (convolutional networks) -- saves some space. Loading doesn't miss them..
- In GraphTableView graphs:
- can select a different data column for the labels to show for X, Z axes -- allows string labels to be applied to numeric axis values -- especially important for 3d graphs.
- button to flip order of values displayed (high to low instead of low to high)
- can rotate x-axis labels so long labels can be vertical or 45 degrees to be legible
- can just enter a min / max value and if different from current, the corresponding "fix" flag will auto-check.
- In GridTableView, new methods: AddVertLabels, AddHorizLabels to add labels around left vert or top horiz edge of grid view -- used in DistMatrixTable function, but now avail for anything..
- Changing between if, else and else if when inline editing preserves sub-code of the conditional, ditto for changing loop type
- Undo / Redo have menu items to choose actions -- still a few issues with this that need to be resolved.
- New preferences options:
- font_size.spacing -- determines spacing in edit dialogs
- screen1-4 (in expert) -- screen-specific parameters (currently font_incr, line_width and window_scale) -- can be useful for calibrating for different monitors such as a large external monitor. do View / Screen Info to see info about the names and params of current screens.
- Visualizer tabs now automatically update to the name of the first object viewed in them.