Releases: hrntsm/Tunny
Releases · hrntsm/Tunny
Tunny v0.8.1
Added
- Debug log output button
Changed
- Improved stability of python library installation
- The library is now included from the beginning in whl format and the file is installed, eliminating the need to download it from the Internet.
What's Changed
Full Changelog: v0.8.0...v0.8.1
Tunny v0.8.0
Added
- Support Human-in-the-loop optimization
- Input FishPrint into the objective to start it
- Add 2 sample gh file
- detail
- Support CMA-ES with Margin
- It allows for more efficient optimization in mixed integer problems.
- detail
- Support NSGA-III
- For more than 3 objective optimization.
- detail
- Python sample code
- Open optuna dashboard menu item
Changed
- When optimizing with CMA-ES, the with Margin option is enabled by default.
- Support multi constraints.
- Bump up optuna v3.2.0
- Bump up optuna-dashboard v0.10.2
Removed
- Grid sampling.
Fixed
- Error occurs when remaining time becomes negative
- GC behavior settings configured in the UI during optimization are not reflected in optimization
Security
- Bump up scipy v1.10.0
Related PR
- Change to disable grid sampling by @hrntsm in #167
- Apply jetbrain tool to code by @hrntsm in #171
- Feature/support cmaes with margin by @hrntsm in #172
- Feature/human in the loop by @hrntsm in #173
- Add open dashboard menu item by @hrntsm in #176
- Featura/updata optuna v3.2 by @hrntsm in #179
- Feature/support multi constraints by @hrntsm in #180
- Release v0.8.0 by @hrntsm in #181
Full Changelog: v0.7.2...v0.8.0
Tunny v0.8.0-beta.2
Added
- Support Human-in-the-loop optimization
- Input FishPrint into the objective to start it.
- Add 2 sample gh file.
How to use Human-in-the-loop optimization
A component called FishPrint has been added to this version. This can be used as an input to Objective to perform human-in-the-loop optimization.
See the video below for a simple usage.
vase_shape.mp4
Tunny v0.8.0-beta.1
Added
- Support CMA-ES with Margin
- It allows for more efficient optimization in mixed integer problems.
Changed
- When optimizing with CMA-ES, the with Margin option is enabled by default.
- Bump up optuna v3.1.1
- Bump up optuna-dashboard v0.9.0
Deprecated
Removed
- Grid sampling.
Fixed
- Error occurs when remaining time becomes negative
- GC behavior settings configured in the UI during optimization are not reflected in optimization
Tunny v0.7.2
Add
- Support Rhino PackageManager.
- Show Tunny icon in grasshopper ribbon.
Related PR
Full Changelog: v0.7.1...v0.7.2
Tunny v0.7.1
Fix
- bug where visualize and output did not work when using journal storage.
What's Changed
Full Changelog: v0.7.0...v0.7.1
Tunny v0.7.0
Summary
- Update UI
- Support Journal Stroage format
Details
Added
- Display of estimated remaining time during optimization run.
- In-memory optimization mode.
- Mode that works faster instead of saving optimization results during optimization.
- Support Journal storage.
- Since saving to the sqlite storage format that had been used up to now sometimes resulted in errors during optimization, a different storage format was supported.
- Checkbox to toggle whether results are shown in the UI in Realtime.
- There was a problem that the display of results on the UI in Realtime, which was added in v0.6, caused the optimization speed to gradually slow down.
Changed
- Boolean to start only the first time, since the Python installer may start every time.
- If you want to install it again, you can do so by checking the checkbox from Misc in the Settings tab.
- The most of the dll files are combined into a single gha file to improve usability.
Deprecated
Removed
Fixed
- Enabled Optuna-Dashboard to work even if the filename contains spaces.
- The problem of saving the results of optimization in progress, etc., which causes an error and fails to save the results, can now be avoided by using JournalStorage.
Security
- Bump torch from 1.12.0 to 1.13.1
Related PR
- Feature/show eta by @hrntsm in #140
- Quotation marks around path for terminal command, few typo fixes by @Knuttatutta in #143 Thanks!
- Add In Memory optimization mode by @hrntsm in #144
- Feature/update python packages by @hrntsm in #146
- Feature/journal storage by @hrntsm in #149
- Fix file access error by @hrntsm in #150
- Feature/toggle realtime opt result UI by @hrntsm in #153
- Add Costura.Fody by @hrntsm in #156
- Fix default storage settings by @hrntsm in #158
- Clean code to fix codefactor issue by @hrntsm in #159
- Release v0.7.0 by @hrntsm in #160
New Contributors
- @Knuttatutta made their first contribution in #143
Full Changelog: v0.6.0...v0.7.0
Tunny v0.6.0
Summary
- A documentation page has been created to provide more detailed information.
- It is now possible to specify the initial combination of variables to run first in optimization
- Improved UI to be more user-friendly
Details
Added
- Enable to save each visualize figure.
- Interactive operations on the figure are kept because it is saved in html format, not as an image.
- Real-time display of trial number, best value, and Hypervolume in the UI.
- Created UI to set where to save optimization result files.
- SQLite handling in C#
- Optimize result handling more smooth some case.
- Previously, it used to read and handle python, which was sometimes slow, but now it calls SQLite directly from CS.
- Only non-dominated trial plot in pareto front.
- Boolean to skip the behavior of checking if the python library is installed in settings.
- For some reason, the installer may be launched every time even if it is installed, so it can be forcibly skipped in the settings.
- FishEgg component
- It is now possible to specify an individual of any variable and have it evaluated in the optimization first and foremost, rather than just setting up a variable completely by the sampler when conducting the optimization.
- Warn start CMA-ES support
- The warm start CMA-ES setting has been added to the CMA-ES settings so that the information from the previous trials can be used.
Changed
- When there are more than 10 params, the value of "Omit_values" is used instead of "params" to improve the visibility of the ParetoFront plot.
- Default name of optimization result file changed from "Tunny_Opt_Result.db" to "Fish.db".
- Easy-to-understand UI for creating study.
- Study Create, Continue, and Copy are now clearly separated in the UI.
- Update visualize & output UI
- Previously, the target study and objective function, variables could not be specified, but now they can be specified.
- Update optuna-dashboard to 0.8.0
Deprecated
- Disable unused setting tab ui items
Fixed
- Even if there was an error in the input to the Tunny component, a window could be launched and the button to perform optimization could be pressed, so we made sure that this would not happen.
- Subject to the following.
- No input for variable and objective.
- The name of the objective is not unique.
- Multiple items entered in Attr.
- Subject to the following.
Security
- Bump joblib from 1.1.0 to 1.2.0 in /Tunny/Lib
- Bump mako from 1.2.0 to 1.2.2 in /Tunny/Lib
Related PR
- Feature/omit params in pareto front by @hrntsm in #109
- Feature/save figure by @hrntsm in #111
- Clean name space by @hrntsm in #112
- Feature/contine study by @hrntsm in #119
- Featura/handle sqlite wo python by @hrntsm in #120
- Feature/update visualize UI by @hrntsm in #121
- Feature/target studyname output by @hrntsm in #122
- fix hypervolume visualization by @hrntsm in #124
- Add check python library setting by @hrntsm in #126
- Feature/add egg component by @hrntsm in #127
- Feature/warm start cmaes by @hrntsm in #131
- Fix/inncorrect objective name by @hrntsm in #133
- Update python lib by @hrntsm in #134
- Fix/disable unused settings UI items by @hrntsm in #136
- release v0.6.0 by @hrntsm in #137
Full Changelog: v0.5.0...v0.6.0
Tunny v0.5.0
Summary
- Constraints can now be taken into consideration.
- Add Clusterting output
- Add Hypervolume output
- Advanced optimization settings can now be made from the UI.
Details
Breaking Change
- The format in which optimization results are saved has been changed. Optimization results from previous versions cannot be handled.
Added
- Hypervolume visualization
- It is useful for determining convergence in multi-objective optimization.
- Clustering visualization
- Clustering of results during multi-objective optimization makes it easier to evaluate solutions.
- BoTorch Sampler
- This sampler use Gaussian Process and support multi-objective optimization.
- Quasi-MonteCarlo Sampler
- Detail about this sampler.
- Support Constraint.
- Only TPE, GP, NSGAII can use constraint.
- Sampler detail settings UI
- Previously it was necessary to change the JSON file of the settings, but now it can be changed in the UI
- Enable Text Bake in the FishMarket component.
- Allows selection of NSGA-II crossover methods.
Uniform
,BLXAlpha
,SPX
,SBX
,VSBX
,UNDX
- Ability to set Popsize on CMA-ES restart
- Run GC after trial when has geometry attribute or setting always run.
- This change probably make optimize slower before
- If you want to cut this setting, set the value of "GcAfterTrial" to 2 in Settings.json.
- Show LICENSE button in Tunny UI.
Changed
- When genepool is an input, it now creates variable names using nicknames.
- The output of the Pareto solution was made to consider the constraints.
- Multivariate in TPE sampler default option is false to true
- Updated Optuna used to v3.0.0
- Use
suggest_int
andsuggest_float
instead ofsuggest_uniform
for more accurate variable generation in optimization - Random and Grid samplers now support multi-objective optimization
- The format of the db file in which the results are saved has changed. Please note that it is not compatible with the previous one.
- Use
Fixed
- The PythonInstaller window now has no text on the progress bar.
- When more than one Study exists, another Study Name is set and RunOpt no longer causes a Solver Error.
- The error does not occur when the Brep of Geometry of Attribute is null.
Related PR
- Feature/more good readme by @hrntsm in #71
- Made the README look cool. by @hrntsm in #72
- Add hypervolume visualization by @hrntsm in #74
- Feature/add botorch sampler by @hrntsm in #76
- Fix/use genepool nickname by @hrntsm in #78
- Feature/support handle integer & discrete_uniform suggestion by @hrntsm in #80
- Fix python installer launch detection by @hrntsm in #83
- Fix/change studyname error by @hrntsm in #84
- Feature/update optuna 300rc by @hrntsm in #85
- Feature/constraints by @hrntsm in #87
- Feature/settings UI by @hrntsm in #91
- Fix pareto front too long attr disp by @hrntsm in #93
- Feature/bake txt in fishmarket by @hrntsm in #95
- Feature/k means by @hrntsm in #100
- Feature/support consider feasible output by @hrntsm in #101
- Feature/update optuna v3 by @hrntsm in #103
- Feature/run-gc-after-trial by @hrntsm in #105
- Add license button by @hrntsm in #106
- Release v0.5.0 by @hrntsm in #107
Full Changelog: v0.4.0...v0.5.0
Tunny v0.4.0
Added
- Component CI build to get easily development build.
- If you want to dogfooding, go right ahead!
- Param_FishAttribute component
- Construct Fish Attribute component
- Component that creates attribute information to be attached to each trial of optimization
- Deconstruct Fish component
- Component that separates optimization results into Variables, Objectives, and Attributes
- Deconstruct Fish Attribute component
- Components that output each attribute
- Python package licenses to clearly state the license of each package.
- requirements.txt file to avoid conflict python packages versions.
- Implemented Timeout to stop optimization over time.
- Input components are now highlighted in color, as are other optimization components.
Changed
- Component location on the Tunny tab.
- The output of the Tunny component is made into Fish, a type that summarizes the results.
- The Geometry input of the Tunny component has been changed to Attribute to allow more attribute information to be handled.
- When restoring the results from Tunny component as Fishes, those that the trial did not work and Objective could not get are not output.
- Update UI
- The UI of the Restore tab was confusing, so the UI was modified to make it easier to understand which button to press and how the results are output.
- The progress bar on the Output tab has been made to show progress in a more understandable way.
- Error messages are displayed when the input to Tunny component is not appropriate, and inappropriate input wires are automatically removed.
- Error massage in python runtime is more clear.
- Added error message when the number of objective does not match the existing Study.
- Added error message when a Study with the same name exists but is used without Loading.
Fixed
- Stopped sampling when there was no geometry input
- Once optimize output error, the component won't run again
- I've tried to do a proper Dispose to fix this problem, but it still doesn't work sometimes.
- Optuna-DashBoard and storage relate functions do not work properly when a different Storage path is specified in Settings than the default.
- Pressing the stop button in output and the stop button in Optimize does not stop the operation.
- Components were in their normal color instead of blue.
- Once an error occurs in PythonRuntime, the optimization will not work after that.
Related PR
- Fix no geometry input error by @hrntsm in #51
- Add ci build setting file by @hrntsm in #53
- Feature/add attribute component by @hrntsm in #57
- Feature/move items to tunny tab by @hrntsm in #59
- Feature/python requirement file by @hrntsm in #61
- Feature/clear button meanings by @hrntsm in #63
- Add code-ql settings by @hrntsm in #64
- Feature/time out by @hrntsm in #65
- Feature/enable stop button by @hrntsm in #66
- Feature/hilight input component by @hrntsm in #67
- Feature/error input message by @hrntsm in #68
Full Changelog: v0.3.0...v0.4.0