changes

Differences

This shows you the differences between two versions of the page.


Previous revision
changes [2023/12/14 15:42] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +~~NOCACHE~~
 +====== SCONE Version History ======
  
 +==== SCONE 2.3.0 ====
 +//Released December 14, 2023//
 +
 +=== New Features ===
 +  * Full integration and support for Reinforcement Learning research via the SconePy Python API, see https://scone.software/doku.php?id=sconepy for more details
 +  * New Model Analysis window, for plotting muscles properties against model coordinates
 +  * New Examples and Tutorials based on improved models, including 3D examples
 +
 +=== SCONE Studio Updates ===
 +  * 3D viewer updates
 +    * Ground tiles now remain visible when the model moves beyond the ground plane size
 +    * Viewer now has a separate default color for object geometry
 +    * Improved shadow rendering when mulitple objects are in the scene
 +    * Improved shadow rendering for scenes with static geometry
 +    * Added option to disable shadow casting for force arrows and static geometry
 +    * Contact geometry can now be hidden without hiding static geometry
 +    * Default contact geometry color is now the same as bone color
 +    * Contact force arrows can now be semi-transparent
 +    * Added option to automatic orbit the camera during playback
 +    * Playback speed can now be changed while making a video
 +  * You can now click on the Analysis graph legend to move it out of the way
 +  * Fixed dark mode support for macOS
 +
 +=== SCONE Updates ===
 +  * Models now support min/max_muscle_activation and min/max_individual_muscle_activation; both can be used as optimization parameters
 +  * Hyfydy models now support ligaments (preview)
 +  * NoiseController now supports deterministic randomized random seeds when random_seed = 0
 +  * GaitMeasure option continue_after_fall [s]
 +  * Removed warning "Multiple child controllers have no name"
 +  * Muscles in Model Info now contain muscle path
 +  * LuaModel find_body_index
 +
 +=== Fixes ===
 +  * 3D viewer camera now keeps focus point when setting the camera position (using r, x, y or z)
 +  * Muscle excitation values in OpenSim models are now correctly clamped when queried; this slightly increases the overall metabolic energy consumption measures for OpenSim models (fixes #7)
 +  * Removed defunct sconepy.Muscle.set_excitation(), fixes #6
 +  * Automatic reload now also works after Save As
 +  * Active scenario now favors current tab
 +  * Missing Gait Analysis plot data is now a warning instead of an error
 +  * SCONE Studio now opens .scone files when clicked
 +  * The 'discard' button now works properly when reloading a file with edits
 +
 +==== SCONE 2.2.1 ====
 +//Released June 7, 2023//
 +
 +=== New Features ===
 +  * SCONE Studio now automatically reloads open files that were modified in another editor
 +  * ScriptController can now have child Controllers, which can be enabled/disabled from within the script update() function
 +  * Hyfydy now supports sphere-capsule and capsule-capsule collisions
 +  * Hyfydy has a major increase in collision performance when there are many collision geometries
 +
 +=== Updates ===
 +  * Reflex min/max_control_value can now be optimized
 +  * Added SconePy.Model.get_tendon_length()
 +  * Simulation statistics now includes simulation_step_size and simulation_step_count
 +  * EffortMeasure now stores individual muscle efforts for Wang2012 and Uchida2016
 +  * Default contact geometry transparency is now 0.5
 +  * Progress bar during evaluation is now more responsive
 +  * Model asymmetry check now shows specific asymmetries
 +
 +=== Fixes ===
 +  * DofMeasure units are now in meters for translational Dofs, added "in_degrees" setting for rotational Dofs (default = 1)
 +  * SequentialController now only writes data for the active controller, preventing controller data from being overwritten by inactive controllers
 +
 +==== SCONE 2.2.0 ====
 +//Released April 9, 2023//
 +
 +=== New Features ===
 +  * gui_profiler
 +  * Messages log level can now be set in Preferences -> Scone Studio -> User Interface Settings
 +
 +=== Updates ===
 +  * Updated progress graph refresh rate and message
 +  * 3D Viewer can now visualize contact forces using a single arrow per body (Preferences -> User Interface -> Combine body contact forces)
 +  * Objectives can now be evaluated even if they contain no free parameters
 +  * Analysis view now has maximum zoom level and better edge handling
 +  * Data analysis and playback now remains available after simulation errors
 +  * Models can now be evaluated without ModelObjective; S: scone
 +
 +==== SCONE 2.2.0 ====
 +//Released April 3, 2023//
 +
 +=== New Features ===
 +  * SCONE is now officially supported on macOS
 +  * SconePy now supports using SCONE Measures to be used for Reinforcement Learning via ''current_measure()''
 +  * Hyfydy models now use a new integrator by default, increasing both performance and accuracy
 +
 +=== Updates ===
 +  * Hyfydy Tutorials and Examples no longer include HfdConfig
 +  * Optimization / Evaluation
 +    * Optimizers now have use_best_as_mean setting
 +    * Objectives can now be evaluated even if they contain no free parameters
 +    * Models can now be evaluated without ModelObjective; S: scone
 +    * Controllers and Measures can now be defined inside Models without type property
 +  * SconePy
 +    * sconepy.quaternion.get_rotation_vector()
 +    * sconepy.Body.com_acc(), ang_acc()
 +    * sconepy.model.log_measure_report()
 +    * sconepy.model.set_simulation_end_time(), has_simulation_ended()
 +    * sconepy.current_measure(), final_measure()
 +  * Progress graph
 +    * Progress graph refresh rate can now be configured
 +    * Progress window now shows optimization time
 +  * Analysis view
 +    * Analysis view now has maximum zoom level and better edge handling
 +    * Data analysis and playback now remains available after simulation errors
 +  * 3D Viewer can now visualize contact forces using a single arrow per body (Preferences -> User Interface -> Combine body contact forces)
 +  * Messages log level can now be set in Preferences -> Scone Studio -> User Interface Settings
 +  * Asymmetric model components are now shown in the Model Info window
 +  * GaitStateController now has use_model_com_reference_pos for state transitions based on sagittal_pos
 +
 +=== Fixes ===
 +  * OpenSim models now correctly load init_state when initial_load = 0
 +  * ModelConverter now mirrors joint limits correctly
 +  * ''FeedForwardController'' now displays an error message when there are no matching actuators
 +  * scone_version is now added in LoadScenario() if a .par file is loaded
 +  * Model components are now properly cleared, fixes User Input / Blueprint crash
 +  * CmaPoolOptimizer now has better documentation
 +
 +==== SCONE 2.1.0 ====
 +//Released January 9, 2023//
 +
 +=== New Features ===
 +  * SCONE now includes a **Python API**, designed and streamlined for **machine learning** applications. Click [[https://scone.software/doku.php?id=sconepy|here]] for more information. 
 +  * SCONE now fully supports Linux (Ubuntu 20.04 or higher). It can be [[https://scone.software/doku.php?id=install|installed]] via a ''.deb'' package and a ''.tar.gz'' archive.
 +  * Added support for converting OpenSim4 models and scenarios to Hyfydy, via ''Tools -> Convert to Hyfydy...''
 +
 +=== Updates ===
 +  * Measures:
 +    * MuscleMeasure now supports ''force'' measurement.
 +    * EffortMeasure now supports measure type ''ActuatorTorque'', use in combination with ''order'' for quadratic, cubic, etc. penalties.
 +    * DofMeasure now supports ''actuator_torque''
 +    * DofMeasure 'force' is renamed to 'limit_torque' (backwards compatible).
 +  * Optimization:
 +    * Improved ''MimicMeasure'' optimization performance through data caching.
 +    * Optimizers now have the option to specify multiple init files, each with its own settings, using the ''init { ... }'' syntax (also in 2.0.6).
 +    * CmaOptimizer now has ''enable_boundary_transformer'' option.
 +    * Added Optimizer setting ''output_individual_search_points'' to write .par files for each individual search point (useful for debug purposes).
 +  * 3D visualizer:
 +    * The 3D visualizer can now follow specific bodies via the setting view.camera_follow_body.
 +    * Perturbation forces are now visualized with longer and thinner arrows.
 +  * Gait Analysis:
 +    * Gait Analysis plots now automatically extend the Y-axis range to fit the data.
 +    * Added option to set font sizes for gait analysis plots (Tools -> Preferences -> User Interface -> Gait Analysis).
 +  * ScriptController / ScriptMeasure:
 +    * Lua scripts can now convert quaternions to euler angles, via SconePy.Quat.to_euler()
 +    * LuaJoint.reaction_force(), limit_torque(), limit_power(), load()
 +    * Added muscle_tendon_length() and muscle_tendon_velocity(), renamed contraction_velocity() to fiber_velocity()
 +    * The current timestamp can now be accessed in Lua script update() functions, via update( model, timestamp ). This allows ScriptController scripts to easily access the time since a controller is activated.
 +  * .sto files can now be played back without Optimizer.
 +  * Extracted data channels now includes time column.
 +  * Model now supports ''neural_delays'', used SconePy Python API.
 +  * OpenSim 4 simulations now only log errors.
 +  * Added option to enter a Hyfydy License Key via the SCONE command line interface (sconecmd).
 +  * Updated Help -> About license information.
 +
 +=== Fixes ===
 +  * Fixed issue where 3D Viewer window would stop working after a simulation error.
 +  * Improved finding the SCONE install folder and related error handling.
 +  * Fixed issue where SCONE Studio would not work properly if the system locale has comma as decimal separator (Linux).
 +  * Folders are no longer stored in settings if they are the default.
 +  * ''BodyEulerOriSensor'' could return invalid number in rare cases, output can be slightly different now.
 +  * Default ModelOpenSim3::GetSimulationEndTime() is now set to MAX.
 +  * Fixed signs for contralateral ''BodyEulerOriSensor'' and ''BodyAngularVelocitySensor''.
 +  * Reflex parameters with source from opposite side now have _o postfix.
 +  * Move text editor cursor to line start after ''Ctrl+/''.
 +  * Improved error handling when updating tutorials and examples.
 +  * Updated error message when ffmpeg is missing.
 +  * Removed warning for when muscle tendon length is smaller than zero.
 +
 +==== SCONE 2.0.6 ====
 +//Released July 26, 2022//
 +
 +=== New Features ===
 +  * Optimizers now have the option to specify multiple init files, each with its own settings, using the ''init { ... }'' syntax.
 +
 +=== Updates ===
 +  * Lua Scripts now support the following functions:
 +    * ''muscle:muscle_tendon_length()''
 +    * ''muscle_tendon_velocity()''
 +    * ''muscle:active_fiber_force()''
 +    * ''muscle:active_force_length_multiplier()''
 +    * ''muscle:passive_fiber_force()''
 +    * ''muscle:max_contraction_velocity()''
 +    * ''model:mass()''
 +    * ''model:gravity()''
 +    * renamed ''muscle:contraction_velocity()'' to ''muscle:fiber_velocity()''
 +  * Lua scripts can now convert quaternions to euler angles, using ''quat:euler_angle_xyz()''.
 +  * ReflexController ''delay'' is now a parameter that can be optimized.
 +  * MuscleMeasure now supports "force" measurement.
 +  * ''.sto'' files can now be played back if the folder contains a ''.scone'' file without an ''Optimizer''.
 +  * Perturbation forces are now visualized with longer and thinner arrows, to improve visibility.
 +  * Added option to set font sizes for gait analysis plots (Tools -> Preferences -> User Interface -> Gait Analysis).
 +  * Removed scone_settings_schema.zml external file dependency.
 +
 +=== Fixes ===
 +  * Fixed signs for contralateral BodyEulerOriSensor and BodyAngularVelocitySensor.
 +  * Reflex parameters with source from opposite side now have _o postfix.
 +
 +==== SCONE 2.0.5 ====
 +//Released May 27, 2022//
 +
 +=== Updates ===
 +  * New Lua Script functions for muscles: tendon_length(), normalized_tendon_length(), tendon_slack_length().
 +  * Gait Analysis plots now have 'mirror_left' option for non-sided channels (e.g. pelvis_list, pelvis_rotation).
 +  * Reflexes now have 'par_name' option to override the parameter name.
 +  * Model conversion tool now remembers previous input name
 +
 +=== Fixes ===
 +  * Measure "name" property now works correctly again (regression in 2.0.4).
 +
 +==== SCONE 2.0.4 ====
 +//Released May 13, 2022//
 +
 +=== New Features ===
 +  * Writing evaluation data to .sto files is now optional (via Preferences -> User Interface -> File settings), data can now be written manually to .sto files via File -> Save Evaluation Data (Ctrl+Shift+E).
 +  * config.scone can now be opened directly from the Optimization Results browser.
 +  * GaitStateController, EffortMeasure, GaitMeasure now support omnidirectional use, via ''omnidirectional'' and ''use_initial_heading'' settings.
 +  * New BodyEulerOriSensor to replace broken BodyOrientationSensor, used by default in BodyOrientationReflex
 +  * DofReflex and BodyOrientationReflex now have ''mirror_left'' option, which mirrors the output for left sided actuators. Useful in combination with pelvis_list, pelvis_rotation, etc.
 +
 +=== Updates ===
 +  * Evaluation results are now written to file in the background to decrease waiting time.
 +  * Greatly improved MimicMeasure performance through data caching.
 +
 +=== Fixes ===
 +  * Fixed issue when pressing enter on a directory to evaluate the latest .par would fail after the file had been deleted.
 +  * BodyOrientationReflex opposite bodies now work correctly, using bodyname_o.
 +  * Performance evaluation (Ctrl+P) with ReplicationObjective now works properly.
 +
 +==== SCONE 2.0.3 ====
 +//Released April 19, 2022//
 +
 +=== Updates ===
 +  * Updated Model Conversion user interface
 +
 +=== Fixes ===
 +  * Fixed issue causing the Model Conversion Tool to remove bodies attached by WeldJoints
 +  * Fixed automatic indentation with '{' or '[' inside line comments
 +
 +==== SCONE 2.0.2 ====
 +//Released April 6, 2022//
 +
 +=== Updates ===
 +  * Added option to export muscle activations from Coordinates
 +  * Actuator Input data now includes muscle excitation
 +  * Added support for activations in state_init_file, new settings state_init_file_ignore_activations and initialize_activations_from_controller
 +  * Optimization Results and Analysis can now be activated through shortcut shown in Windows menu
 +
 +=== Fixes ===
 +  * Fixed joint_motor_force max_torque application
 +  * Fixed rounding error of sliders in CoordinateEditor
 +  * Fixed video generation during playback (closes #4)
 +
 +==== SCONE 2.0.1 ====
 +//Released March 17, 2022//
 +
 +=== Updates ===
 +  * MimicMeasure can now read both .sto and .txt
 +  * MimicMeasure now has activation_error_weight
 +  * ReflexController now has new BodyOrientationReflex (experimental)
 +
 +=== Fixes ===
 +  * Fixed rounding error of sliders in CoordinateEditor
 +  * Fixed visualization of .obj files with extra orientation in transform
 +
 +==== SCONE 2.0.0 ====
 +//Released February 18, 2022//
 +
 +SCONE 2.0 is a **major new release** with following new features:
 +  * Support for //new simulation engines// OpenSim 4.3 and Hyfydy, allowing for the latest features and drastically improved optimization speeds (using Hyfydy).
 +  * //Select muscles and bodies// directly in the 3D viewer.
 +  * New //Model Information// window that contains information on all model components.
 +  * New //Coordinate Editor// that allows you to tweak model coordinates and change initial poses.
 +  * Updated //Tutorials and Examples//.
 +  * Several improvements to the //Editor//, //Analysis// and //Optimization//, as well as //many bugfixes//.
 +
 +=== New Simulation Engines ===
 +SCONE includes support for the following simulation engines:
 +  * [[https://opensim.stanford.edu|OpenSim 3.3]] (Open Source)
 +  * [[https://opensim.stanford.edu|OpenSim 4.3]] (Open Source)
 +  * [[https://hyfydy.com|Hyfydy]] (Proprietary)
 +
 +All Controllers and Measures can be used interchangeably with each of these simulation engines. All engines are included in the Windows 64 bit installer for SCONE.
 +
 +**Hyfydy** is state-of-the-art musculoskeletal simulation software that provides a 50-100x speedup over OpenSim. See https://hyfydy.com for more information and a free trial.
 +
 +=== Tutorials and Examples ===
 +  * All Tutorials have been updated and fine-tuned and are now available for both OpenSim and Hyfydy.
 +  * Additional Examples are now included for OpenSim3, OpenSim4 and Hyfydy.
 +
 +=== New Components ===
 +  * New //Model Info// window that shows all model properties. It can be activated by clicking on muscles or bodies in the 3D viewer.
 +  * New //Coordinates// window that allows you to edit the model coordinates and export initial poses.
 +  * New //Evaluation Report// window that shows information about how a Measure is computed in an evaluation.
 +
 +=== 3D Visualizer Improvements ===
 +  * Hover over any muscle or body in the 3D viewer to see its name; click to see its properties.
 +  * Muscle color can now represent activation, force or fiber length.
 +  * Model geometry is now cached and loads much faster when a scenario is reloaded.
 +  * Added visualization of model center-of-mass, joint moments and body moments.
 +  * Viewer now supports static camera (enable via ''View –> Static Camera'').
 +  * Added configuration options for tile size, tile count and contact geometry transparency.
 +  * Fixed shading of scaled geometry files.
 +  * Fixed scaling of .obj geometry.
 +  * Many other visualization improvements and fixes.
 +
 +=== Editor Improvements ===
 +  * Added support for drag-and-drop from the Windows File Explorer to open files.
 +  * Toggle comments via ''Ctrl+/''.
 +  * Duplicate selected text or the current line via ''Ctrl+U''.
 +  * Reload the current document via ''Ctrl+R''.
 +  * Scenario files now support inline macro expansion, e.g. ''"text${var}"'', which can be useful for adding a macro to a signature.
 +  * Many more minor improvements and fixes.
 +
 +=== Analysis Improvements ===
 +  * Added support for outputting muscle moments, moment arms, coordinate moments and powers.
 +  * Added option to keep all data frames for analysis, but not for file storage.
 +  * The Analysis graph now automatically scales the Y-axis to fit the data shown.
 +  * Analysis view filter now supports wildcards (* and ?); activate filter with ''Ctrl+L''.
 +  * Several Gait Analysis improvements and fixes.
 +
 +=== Optimization Improvements ===
 +  * Current SCONE version is now stored in results to improve backwards compatibility in the future.
 +  * Improved error handling and reporting in optimizations.
 +  * New settings ''init_file_include'' and ''init_file_exclude'' to control which parameters are read from file.
 +  * The Optimization Results file browser now allows users to move multiple files or folders to the recycle bin at once.
 +  * Pressing the return key on a folder in Optimization Results automatically evaluates the most recent .par file in that folder.
 +  * Many more fixes and improvements.
 +
 +=== Other Improvements ===
 +  * Optimization Results can now be benchmarked with Ctrl+P and Ctrl+Shift+P.
 +
 +  * When editing preferences, leaving a setting blank now restores its default value.
 +
 +=== Other Fixes ===
 +  * Camera and view settings are now applied correctly on scenario load.
 +  * Added extra checks to prevent crash in case of missing filenames.
 +  * fixed issue where camera control would stop working after saving image.
 +  * Analysis cursor position is now more accurate with irregular time intervals.
 +  * Muscles that connect to both sides of the root segment are now handled correctly
 +  * Analysis windows are now updated correctly after loading a .sto from the optimization results (#247).
 +  * Updated warning message when gait analysis channels are missing, removed message: "lerp_map() was called on empty map" (#247).
 +  * sconecmd now supports -r in combination with -o (#230).
 +  * GaitStateController transition parameters are now optimized individually when symmetric = 0 (#214).
 +  * GaitStateController shows an error message (instead of crashing) when an uneven number of legs has been detected.
 +  * MimicMeasure::stop_time default is now set to match end of storage file.
 +  * SequentialController now correctly stores Analysis data of child controllers.
 +  * Fixed issue where evaluation would start automatically when loading while playback is active.
 +  * Line widths in Analysis view and progress windows now default to 1. It turns out other values lead to poor performance.
 +  * Fixed checking if document is modified, increasing editing performance.
 +  * Editor now gets focus after opening file.
 +  * MimicMeasure error limits are now disabled (0) by default, peak_error_limit is set to 2 * average_error_limit by default.
 +  * Updated documentation for GaitStateController and GaitMeasure (#69).
 +  * EffortMeasure computation is now correct again when use_cost_of_transport = 0.
 +  * CmaPoolOptimizer now works again.
 +  * Fixed inaccurate warning of unused parameters in CmaPoolOptimizer.
 +  * Fixed progress graph zooming with pooled CmaPoolOptimizer.
 +  * pooled_evaluator is now properly initialized so it doesn't need to restart all threads immediately.
 +  * EffortMeasure now shows name in Analysis Window and .sto output.
 +  * Fixed incorrect optimization timing when optimizations took longer than 922 seconds.
 +
 +==== SCONE 1.5.0 ====
 +//Released June 19, 2020//
 +
 +=== New Features ===
 +  * New ''Parameter View'' window that shows all optimization parameters in the current scenario.
 +  * New ''Evaluation Report'' window that shows the measure results from the most recent evaluation.
 +  * Context-sensitive help: pressing F1 in the scenario shows on-line help for the keyword under the cursor.
 +  * New ''StepMeasure'' for penalizing stride length and/or step duration, thanks to **Dimitar Stanev**.
 +  * ''GaitStateController'' can now have single-sided controllers, using the ''legs'' parameter.
 +  * Help menu now has links for ''About...'' and ''User Forum''
 +  * New (very useful!) text editor option: Press ''Ctrl + /'' to toggle comments for the current selection.
 +  * ''.scone'' files now support ''%%//%%'' and ''/*'' ''*/'' style comments.
 +  * New menu option ''Window -> Reset Window Layout'' to restore the original window layout.
 +  * ''EffortMeasure'' now supports ''SquaredMuscleActivation''.
 +  * ''SequentialController'' now outputs which controller is active in the AnalysisWindow, as 'active_index'. Closes #200.
 +  * ''FeedForwardController'' now has ''include'' and ''exclude'' settings for targeting specific actuators.
 +  * Measures now have a ''threshold_transition setting'' for gradually decreasing the measure if they approach the threshold (if any). 
 +  * ''BodyMeasure'' now uses ''direction'' and has option for magnitude.
 +  * ''GaitMeasure'' ''base_bodies'' now use model foot bodies by default, instead of toes_l / toes_r. This will result in a slightly different outcome for existing scenarios that have no ''base_bodies'' specified.
 +  * New command line option -b for benchmarking a scenario
 +  * ''MimicMeasure'' now has ''average_error_limit'' and ''peak_error_limit'' options for early termination
 +  * Option to store linear and angular momentum.
 +
 +=== Updates and Fixes ===
 +  * ''Edit -> Find'' and ''Find Next'' now also work with .lua files.
 +  * Find Text now starts at the next occurrence. Added a hint for using F3 / Shift + F3. Closes #188.
 +  * ''RangePenalty'' documentation now shows min and max parameters instead of 'range'.
 +  * The ''RangePenalty'' default of (-inf, inf) now works correctly with angle types, such as in ''DofMeasure'' postion / velocity.
 +  * When creating a video while ffmpeg is not found, an error message is shown instead of a silent exit.
 +  * Fixed issue where loading an invalid OpenSim model could crash SCONE.
 +  * Fixed tab order in AnalysisView tab order between filter and select checkbox.
 +  * Error for unnamed child controllers is now warning again.
 +  * Fixed rare invalid cycle detection in Gait Analysis.
 +  * Fixed Lua automatic indentation when using 'for' or 'while'.
 +  * Simulation no longer crashes when no controller is defined.
 +  * Models are now called ModelOpenSim3 / ModelOpenSim4 to be consistent with the online help. Tutorials have been updated.
 +  * Current optimization progress is now shown in optimization window tooltip.
 +  * SCONE now always logs to the terminal under Linux.
 +  * Message "Invalid scenario settings" now shows invalid setting(s) in message window.
 +  * Gait Analysis now provides more useful error messages when loading a template.
 +  * No longer is a restart required after selecting a different gait analysis template.
 +
 +==== SCONE 1.4.0 ====
 +//Released March 3, 2020//
 +
 +=== New Features and Updates ===
 +  * Gait Analysis support, allowing users to extract gait cycles from simulation results, and compare gait parameters to norm data
 +  * Scripting improvements and updates:
 +    * Greatly improved error handling in Lua scripts, closes #184, closes #80, closes #81
 +    * ScriptMeasure and ScriptController now support 'external_files', which can be used to add files included by a 'require' keyword. closes 
 +    * Support for automatic indentation when editing Lua files
 +    * Renamed LuaMuscle::fiber_force() to LuaMuscle:force()
 +  * Video output and visualization:
 +    * Add option to automatically set resolution of a video by resizing the viewer window (floating windows only)
 +    * Video output now supports mp4 (default), avi and mov container formats
 +    * Added optional visualization of Body Center of Mass (COM)
 +  * Data analysis:
 +    * Added option to permanently 'Keep' specific graphs in the Analysis window (''Ctrl+Shift+k''), allowing easy comparison between different results
 +    * Added option to extract specific channels to separate tab-separated file, via ''Tools -> Preferences -> Advanced''
 +    * Added option to output relation between dof and muscle length to file, via ''Tools -> Muscle Analysis''
 +    * Added option to show model information to the messages window, via ''Tools -> &Model Analysis''
 +  * FeedForwardController now supports ''SineWave'', with parameterizable ''amplitude'', ''frequency'', ''phase'', and ''offset''
 +  * Added ''initial_equilibration_activation'' parameter for to Model
 +  * Pressing ''F2'' in Optimization Results now allows renaming files and folders
 +
 +=== Fixes ===
 +  * Fix several crashes related to scenario or script errors
 +  * Progress window now report error message in case of flat fitness on first generation
 +  * Fixed message "Could not find Optimizer": SCONE no longer tries to evaluate a .scone file that doesn't have the word "Optimizer" in it
 +  * Pressing "Cancel" when asked to "Save Changes" now works correctly
 +  * Fixed default file type when using "File -> Save As...", closes #186
 +  * Fixed crash when trying that write to an .sto that is open in anther program, closes #185
 +  * Fixed GaitMeasure step length and step duration reporting
 +  * EffortMeasure Wang2012 is now guaranteed to be non-negative
 +  * Fixed potential crashes in SconeStorageDataModel::timeValue(), SconeStorageDataModel::label() and SconeStorageDataModel::getSeries()
 +  * Many documentation fixes and updates
 +  * Viewer no longer gets keyboard focus after evaluating a .par file
 +  * Double-clicking a folder in "Optimization Results" now opens the folder instead of showing an error
 +
 +==== SCONE 1.3.3 ====
 +//Released January 7, 2020//
 +
 +=== New Features and Updates ===
 +
 +  * Updates to ScriptController and ScriptMeasure:
 +    * LuaBody now has support for mass(), inertia_diagonal(), closes #176
 +    * LuaDofs can now be used as actuators, through is_actuated(), add_input(), input(), min_input(), max_input(), min_torque(), max_torque(). See online documentation for details. closes #177
 +    * Added Lua string library to ScriptController and ScriptMeasure, closes #95
 +    * ScriptController init function now has 'side' parameter, which denotes if the controller is for a specific side (-1 = left, 0 = any, 1 = right). closes #96 
 +    * Documentation updates
 +  * Added support for concurrent_optimizations in CmaPoolOptimizer
 +  * New output channels for muscles: mtu_length, mtu_velocity
 +  * Improved performance of writing .sto output
 +  * Added simulation statistics in output
 +
 +=== Fixes ===
 +  * StudioModel no longer crashes when objective is no ModelObjective
 +  * Fixed crash when trying to save as an unknown file format
 +  * Improved error message when an invalid state is entered in GaitStateController. closes #179
 +
 +==== SCONE 1.3.2 ====
 +//Released December 10, 2019//
 +
 +=== New Features and Updates ===
 +  * Added support for displaying .obj and .stl files
 +  * Display geometries that exist in the model folder are now automatically copied to the output folder during optimization. **To prevent excessive copies, please copy the display geometries to the shared 'geometries' folder**.
 +  * Optimizer report now includes time, number_of_evals, evals_per_sec
 +
 +=== Fixes ===
 +  * Fixed issue causing the initial parameter file (''init_file'') of an optimization not to be copied to the output folder, making it impossible to playback optimization results that use ''init_file''
 +  * ''GaitStateController'' now displays a proper warning message when no legs are defined in the model
 +  * Increased maximum data output frequency to 1e6
 +
 +==== SCONE 1.3.1 ====
 +//Released November 27, 2019//
 +
 +=== New Features and Updates ===
 +  * Support for building SCONE on Linux, many thanks to **Dimitar Stanev**
 +  * Support for Travis-CI build integration, many thanks to **Dimitar Stanev** and **Chris Dembia**
 +  * Added support for optimizing OpenSim models with ''ContactMesh'' contact geometry
 +  * 3D Viewer settings are now remembered when restarting SCONE
 +  * Added joint force visualization option to 3D viewer
 +  * Improved support for the concept of //legs//, which is used by ''GaitController'' and ground reaction force reporting. Model-specific leg elements can now be specified through ''leg_upper_body'' and ''leg_contact_force'' parameters in OpenSim3Model. Previously, these values were hard-coded to their default values ''femur'' and ''foot''.
 +
 +=== Fixes ===
 +  * Fixed issue where duplicate external resources would cause an error during optimization
 +  * GaitMeasure documentation of upper_body and base_bodies
 +  * Fixed infinite loop when no suitable initial state could be found in models that define contact geometry but no contact force
 +  * Resolved issue where SCONE could crash if a ContactGeometry for a foot body segment did not exist
 +
 +==== SCONE 1.3.0 ====
 +//Released November 12, 2019//
 +
 +=== New Features and Updates ===
 +  * SCONE scenarios are now loaded an visualized immediately after a file is opened or saved
 +  * Improved support for editing and optimizing more model properties (using ''Properties { ... }'') directly in the SCONE scenario. These include ContactGeometry (position, radius, etc.), Joint, and Coordinate properties. Closes #78
 +  * Major performance improvement of the SCONE User Interface when the 3D visualizer is not actively used
 +  * 3D viewer now supports keyboard shortcuts for orbit (''Left'', ''Right'', ''PgUp'', ''PgDn''), pan (''Shift + Arrow keys'') and zoom (''Up'' and ''Down'')
 +  * ''Ctrl + Space'' now toggles playback
 +  * ''Ctrl + E'' now evaluates the currently selected scenario
 +  * Visualizer no longer uses emissive component, added ambient_intensity parameter
 +  * SCONE Unit tests are now performed in parallel for improved performance
 +
 +=== Fixes ===
 +  * When optimizing a scenario, the //copied// versions of models and scripts are now used, so you can freely edit the originals during an active optimization
 +  * Fixed incorrect "Please select a .scone file" error while optimizing or evaluating a scenario
 +  * ''PieceWiseLinear'' and ''PieceWiseConstant'' functions now check if ''dt > 0''
 +  * ''ImitationObjective'' was broken, now it works again
 +
 +==== SCONE 1.2.3 ====
 +//Released September 13, 2019//
 +
 +=== Fixes ===
 +  * ScriptMeasure / ScriptController: Fixed issue causing contact_force(), contact_moment() and contact_point() to return zero
 +  * ScriptMeasureJump.lua (from Tutorial 6a) now demonstrates use of body:contact_force()
 +
 +==== SCONE 1.2.2 ====
 +//Released September 9, 2019//
 +
 +=== Fixes ===
 +  * ScriptMeasure / ScriptController: Contact forces are now accessed correctly using contact_force(), contact_moment() and contact_point()
 +  * File Save (''Ctrl + s'') now works with .lua files (closes #77)
 +  * Open File (''Ctrl + o'') now shows all supported file formats by default
 +  * Jumping tutorials now explicitly maximize results
 +  * Documentation fixes
 +  * Minor performance enhancements
 +
 +==== SCONE 1.2.1 ====
 +//Released July 25, 2019//
 +
 +=== Fixes ===
 +  * ScriptController and ScriptMeasure: Lua scripts now support 'require' for including other scripts located in the same folder
 +  * FeedForwardController now supports CoordinateActuators
 +  * FeedForwardController no longer crashes when no actuators could be found
 +
 +==== SCONE 1.2.0 ====
 +//Released June 25, 2019//
 +
 +=== New Features and Updates ===
 +  * Contacts forces are now correctly reported and displayed in the SCONE 3D visualizer.
 +  * Ground plane visualization now supports tilt and offsets.
 +  * GaitMeasure takes into account ground plane slopes when detecting falling.
 +  * Improved support for defining symmetric / asymmetric controllsers. The 'symmetric' property now works as expected in all controllers and is inherited from parent controllers if not specified (root controller defaults to true).
 +  * Scripting (ScriptMeasure and ScriptController):
 +    * Added support store_data() for writing data to .sto and SCONE analysis window
 +    * Improved error handling and reporting for scripts
 +    * added body:point_pos and body:point_vel
 +    * added functionality to LuaVec3 and LuaQuat (see reference manual)
 +  * Added warning in folder preferences dialog to avoid network drives (issue #53)
 +  * Pressing F5 will now evaluate the currently active scenario (if any)
 +  * When pressing Ctrl + T or Ctrl + F5 while a .lua file is active, scone tries to open a .scone instead.
 +  * Updated tutorials and documentation
 +
 +=== Fixes ===
 +  * All open files are now checked for modification when running a scenario
 +  * Close current tab (Ctrl+W) now works correctly
 +  * Jump tutorials now use correct init_file
 +  * JumpMeasure now supports both 'body' and 'target_body', matching documentation and maintaining backwards compatibility
 +  * Text modification detection now works properly with undo
 +  * Text documents are now automatically focused when opened
 +
 +==== SCONE 1.1.1 ====
 +//Released May 29, 2019//
 +
 +=== New Features and Updates ===
 +  * Added new MuscleMeasure for penalizing muscle activation, length and contraction velocity (issue #36).
 +  * RangePenalty now supports 'mode' setting, allowing the final penalty to be the 'average' (default), 'lowest', or 'highest' of all recorded
 +  * New measure_type in EfforMeasure: SquaredMuscleStress. This minimizes the sum of (F/PCSA)^2 for all muscles.
 +  * Controllers now have 'name' member that is used as a prefix for all parameter names. This should prevent undesired parameter name clashes when combining controllers. CompositeController displays warning when child controllers have identical names.
 +  * Added warning in folder preferences dialog to avoid network drives (issue #53)
 +  * Documentation updates
 +  * Tutorial updates
 +
 +=== Fixes ===
 +  * SequentialController now works correctly
 +  * NoiseController more accurately handles cases where the noise STD is zero
 +  * tutorial 6b, renamed 'gyro' to 'external balance device'
 +
 +==== SCONE 1.1.0 ====
 +//Released May 20, 2019//
 +
 +=== New Features and Updates ===
 +  * SCONE now has a powerful new scripting interface for custom controllers and measures
 +    * Using the lua scripting language (http://lua.org)
 +    * Create custom controllers using ScriptController
 +    * Create custom measures using ScriptMeasures
 +    * Support for writing custom data to .sto and SCONE Analysis window
 +  * The SCONE Studio editor now supports Find (Ctrl+F) and Find Next / Previous (F3 / Shift+F3)
 +  * The .SCONE file format is now more strict:
 +    * Comments using '';'' ''%%//%%'' ''/*'' and ''*/'' are no longer supported
 +    * Only single line comments '#' and multi-line comments '###' are supported
 +  * Improved unit testing
 +  * Many documentation updates and fixes
 +
 +=== Fixes ===
 +  * Jump tutorials now use correct init_file
 +  * Editor now handles undo/redo of document formatting as single step
 +  * JumpMeasure now supports both 'body' and 'target_body', matching documentation and keeping backwards compatibility
 +
 +==== SCONE 1.0.0 ====
 +//Released April 18, 2019//
 +
 +=== Updates ===
 +  * Documentation updates
 +  * Depricated StateController, TimeStateController and SensorStateController
 +
 +==== SCONE 0.22.1 BETA ====
 +//Released April 16, 2019//
 +
 +=== Updates ===
 +  * Documentation updates
 +  * Updates to unit testing
 +  * SCONE now uses OpenSceneGraph 3.4.1 (see https://openscenegraph.org)
 +
 +=== Fixes ===
 +  * SCONE now ignores the initial_load setting when a model does not have contact geometry, preventing the software from hanging.
 +
 +==== SCONE 0.22.0 BETA ====
 +//Released April 4, 2019//
 +
 +=== Updates ===
 +  * SCONE now displays a warning dialog when a scenario contains invalid setting
 +  * New and updated tutorials
 +  * Added keyboard shurtcuts in SCONE viewer:
 +    * 'r' reset viewer camera
 +    * 'x' view model along x direction
 +    * 'y' view model along y direction
 +    * 'z' view model along z direction
 +  * Improved reading and error reporting of SCONE scenarios
 +
 +=== Fixes ===
 +  * Fixed visualization of scaled OpenSim models (OpenSim3)
 +  * Restored DATE_TIME_EXACT tag in signatures
 +
 +==== SCONE 0.21.0 ALPHA ====
 +//Released February 13, 2019//
 +
 +=== Updates ===
 +  * New tutorials
 +  * Improved scone scenario notation, 'type' parameter can now be omitted
 +  * Model properties can now be set via ModelProperties
 +  * External files can now be included using << FILENAME >>
 +  * Improved appearance
 +  * Added unit tests
 +  * DATE_TIME year now uses 2 digits
 +
 +=== Fixes ===
 +  * NoiseController now works when noise sigma is zero
 +  * Better handling of upper / lower parameter bounds during optimizaiton
 +
 +==== SCONE 0.20.1 ALPHA ====
 +//Released January 8, 2019//
 +
 +=== Fixes ===
 +  * Issue where negative tendon lengths would cause a crash in the visualization
 +  * Issue where simulations with a duration with a decimal point would not terminate correctly
 +
 +==== SCONE 0.20.0 ALPHA ====
 +//Released December 14, 2018//
 +
 +=== Updates ===
 +  * Ground reaction force is now output both as normalized [gBW] as unnormalized [N] data.
 +  * New data output: Center of Pressure (CoP) and Ground Reaction Moment [Nm] 
 +
 +==== SCONE 0.19.4 ALPHA ====
 +//Released December 6, 2018//
 +
 +=== Fixes ===
 +  * Fixed regression reading vector data
 +
 +==== SCONE 0.19.3 ALPHA ====
 +//Released December 6, 2018//
 +
 +=== Fixes ===
 +  * When evaluating a scenario from sconecmd.exe, the average parameters are now used instead of the best, in order to be consistent with scenario test (Ctrl + T) from SCONE studio.
 +
 +==== SCONE 0.19.2 ALPHA ====
 +//Released December 5, 2018//
 +
 +=== Fixes ===
 +  * Fixed issue reading state_init_optimization.exclude from legacy scripts
 +  * Fixed issue where data output settings were not read when running from command-line
 +
 +==== SCONE 0.19.1 ALPHA ====
 +//Released November 19, 2018//
 +
 +=== Updates ===
 +  * Ground plane can now be hidden
 +
 +=== Fixes ===
 +  * Fixed auto-formatting issues in scone editor
 +  * Correctly handle transform and scale of display geometry
 +
 +==== SCONE 0.19.0 ALPHA ====
 +//Released November 14, 2018//
 +
 +=== New Features and Updates ===
 +  * Improved support for batch processing through the command line interface
 +  * Added setting for output video quality and video frame rate
 +  * Example updates
 +
 +==== SCONE 0.18.0 ALPHA ====
 +//Released October 17, 2018//
 +
 +=== New Features and Updates ===
 +  * MuscleReflex can now act with activation as source (using KA, A0 and allow_neg_A)
 +  * Reflexes can now use contralateral sources, using ''_o'' postfix.
 +  * Added initial_load and initial_load_dof to allow control over the initial position of the model
 +  
 +=== Fixes ===
 +  * Sided reflex data in analysis output is now displayed correctly
 +  * Invalid initial_load settings now produce a warning instead of an error
 +  * Documentation fixes
 +  
 +==== SCONE 0.17.1 ALPHA ====
 +//Released October 12, 2018//
 +
 +=== Fixes ===
 +  * Fixed issue where settings could not be loaded the first time
 +  * Fixed error in the Gait GH2010 example
 +
 +==== SCONE 0.17.0 ALPHA ====
 +//Released October 11, 2018//
 +
 +=== New Features and Updates ===
 +  * Many visualization improvements
 +  * New, more robust system for storing settings
 +  * Example gait model updates (fixed gastroc length issue) 
 +  * Documentation updates
 +
 +=== Fixes ===
 +  * Several minor stability improvements
 +
 +==== SCONE 0.16.0 ALPHA ====
 +//Released October 5, 2018//
 +
 +=== New Features and Updates ===
 +  * NoiseController for simulating Motor Noise
 +  * BodyMeasure for measuring position, speed and velocity of a point on a body
 +  * JumpMeasure now has offset on body for measuring height
 +  * Controllers can now be defined outside Model
 +  * Updated Examples
 +
 +=== Fixes ===
 +  * Simulation errors are now properly reported
 +  * .par filenames are now written correctly with extremely high / low fitness
 +
 +==== SCONE 0.15.0 and earlier ====
 +//Changes to SCONE are officially published since version 0.16.0//