CHANGELOG
=========

v2.2.0 (19 September 2024)
-----------------------
* The implementation is now available under the 3-Clause BSD License.

v2.1.0 (21 September 2022)
-----------------------
* Allow reading lexicon files in CSV format.
* Allow mapping CSV columns to pools directly through parameters.
* Deal with potential byte order marks (BOMs) in lexicon files.
* Add textarea for status lines to bottom of ModelGUI window.
* Show task responses as status lines in ModelGUI window.
* Add headers to output CSV files.
* Force input and output files to UTF-8 encoding.
* Add support for polysemy by looking up existing nodes in pool.
* Add support for between-language node inhibition (LL_gamma).
* Make S_rest optionally frequency-dependent as well.
* Gradle build: use Maven central for dependencies.
* Remove dependency on deprecated Nashorn ScriptEngine.
* Remove obsolete 'highest rank' parameter.
* Remove support for PerSubLex and PerSubLexWithRef rankers.
* Remove old fitter code.
* Remove old lexicon builder tool.
* Remove old lexicon creator code.
* Remove maxRestMultipliers parameters.

v2.0.0 (2 October 2019)
-----------------------
* The ModelGUI now indicates simulation progress with a progress bar.
* The output format has been changed to CSVs, with commas as the default separator.
* Allow stringifying an entire network to a CSV 'matrix' file for each input set.
* Parameter files are now serialised in JSON rather than XML.
* Node connection lists now use a hash map for faster access.
* Re-implemented lateral inhibition algorithmically instead of connection-based.
* The chart library has been replaced with XChart for expressive, full-network graphs.
* Winner charts have been integrated into the main charts.
* Allow changing the simulated task without reloading the model.
* Re-implement semantic associations in the network, fixing semantic spreading.
* Introduce lateral inhibition between semantic nodes; SS_gamma parameter.
* Skip loading semantic connections if SS_multiplier = 0.0.
* Change semantics to use frequency-based resting levels.
* Send intermediate task results to the output buffer.
* Skip placeholders with null frequency at network creation time.
* Remove the need for full model reload when changing the number of cycles.
* Deprecated all rest ranker options except LogFrequency.

v1.4.0 (29 January 2019)
------------------------
* Introducing a new Swing-based runner GUI:
  * More logical lay-out with sensible defaults.
  * Allow loading and saving simulation settings to JSON.
  * Allows changing graph settings after loading the model.
* Introducing a new command-line runner TUI which uses the same JSON files as the GUI.
* New Word Translation task with language constraints and additional semantics checks.

v1.3.0 (6 June 2018)
--------------------
* Adds functional changes of the warriors version of the codebase:
  * Add Zscore fitness computation
  * Add LogFrequency rank computation
  * Activation function changes
  * Model parameter changes
  * Recent input and output files (see config folder)

v1.2.0 (6 June 2018)
--------------------
* Add lateral inhibition.
* Modernize project build strategy.
