-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Css-methodSelection #113
Merged
Merged
Css-methodSelection #113
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Reupload integral plugin * argopt plugin * Css user interaction for Bayesian Optimisation (#91) * Display for less than 3 parameters * Added current selection * DoubleClick for editing * Change plugin readable name In order to avoid confusions with the Optimisation plugin, changed naming to indicate it referes to the ui. * Added icon to GUI window * Fix more than 2 variables error * Minor aesthetic changes * Css bayesian optimisation (#98) * added re-attempt of env and pybullet * ongoing pybullet/arg population changes * added pybullet stubs * added credit to stubs * added gui/headless choice function * added environment module tag to XML parser * added pybullet config file * renamed Environment module to remove plural * added types and ABC for env modules * removed renamed scripts * modified run pipeline for pybullet * moved relative to absolute converter to import helper * added half-cheetah model * pybullet loading and running working * added half cheetah example with mass * added option to set gravity * removed requirement for data * removed data loading for pybullet example script * added __getattr__ function to access all pybullet methods from ENV class * added option parsing * Change progressTracker to treeview * Correct icon * WIP: editing option parsing * option mods - not yet working * arg passing without kwords to pybul from xml * cleaned imports * renamed depreciated setup file * removed old setup file * cleaned up main __init__ file * added matplotlib to pyproject.toml * Add pytest structure (#56) Co-authored-by: Teemu Ruokolainen <teemu.p.ruokolainen@gmail.com> * Add cli (#57) * working cli * Update readme * Update readme Co-authored-by: Teemu Ruokolainen <teemu.p.ruokolainen@gmail.com> * Cm package restructuring (#54) * moved py files to src/vai_labs for packaging * added vscode config to gitignore * updated package name in run_pipeline * fixed pyproject matplotlib import * fixed path for import helper * updated project version for PYPI * updated readme and pyproject.toml * fixed README typo * removed depreciated setup script * fixed path in import_helper.py * Update README.md Updated repo name in README * moved README images * Update README image paths * Remove readme.md.bak (#58) Co-authored-by: Teemu Ruokolainen <teemu.p.ruokolainen@gmail.com> * Cm name updates (#59) * updated naming and paths for projects * merged README files * updated README naming * update import names in README * updated example links * updated missed readme names * find-replace aidesign refs -> vai_lab * renamed files containing old ai_design name * renamed test file * Css-gui_bugFixing (#60) * Adjust aidCanvas' buttons' size * Correctly resize lower buttons' sizes * Resize buttons, pad radio frame, correct click on in or out * Fix issue with data path * Fix upload data mattrix path * moved test script Co-authored-by: cam586 <c.mcgreavy@hotmail.com> * Fix repository url in readme and pyproject.toml (#63) * added opencv & pytest (#62) * Clean up lingering/duplicate files. (#64) Co-authored-by: Teemu Ruokolainen <teemu.p.ruokolainen@gmail.com> * Added debug option (#65) * add debug option to core,GUI * Update test_launch.py Add test_launch() function for pytest discovery Co-authored-by: teemu <teemu.ruokolainen@iki.fi> * Added CI Test using Github Actions (#66) * add debug option to core,GUI * Update test_launch.py Add test_launch() function for pytest discovery * added initial actions yaml * testing now triggered on PR * removed testing for python3.7 * added option for manually running actions * added workflow_dispatch options * temp removal of PR trigger * testing using push trigger * removed incorrect pytest dir * added env variable for GUI testing * added virtual display for GUI testing * removed old yml tag * install virtual display with existing action * fixed yml syntax * fixed xvfb syntax * removed old xvfb tags * update to node.js 16 * test pip caching * removed cache test * fixed cov file path * removed testing for python3.7 * install virtual display with existing action * update to node.js 16 * fixed cov file path * changed trigger condition to pull request * renamed tests package * added programming language classifiers * changed trigger to PR * added test and version shields * fixed README typo * gitignore any venv * removed unneeded tk dep from toml * simplified test call * testing manual workflow trigger * added workflow_dispatch options * re-added pull_request trigger Co-authored-by: teemu <teemu.ruokolainen@iki.fi> * Remove flit from readme (#67) Co-authored-by: Teemu Ruokolainen <teemu.p.ruokolainen@gmail.com> * Cm fix readme img path (#68) * fixed readme image paths * updated version number * Css fix pluginarchitecture diagram (#69) * Include plugin diagram * Delete old verion * Update plugin diagram * Update plugin diagram * Add white filling to squares for dark mode * fixed contribute urls Co-authored-by: cam586 <c.mcgreavy@hotmail.com> * Add rough sphinx documentation (#74) * Add autogen docsting sphinx docs * ReadTheDocs * Building version * Change index page title * Add github actions workflow * Update README * Add pip install . to documentation.yml * Add README.md as a page in documentation * Add sphinx-apidoc command to readme; gitignore generated rst files * Update readme sphinx commands * Update readme * Add comments * Update commands in documentation workflow * Fix typo in .gitignore * Remove _static folder from config to remove warning message * Specify python=3.10 for workflow * Remove pip install sphinx-apidoc, no such package * Update readme * added docs build badge to readme * fixed error-causing docstring Co-authored-by: Teemu Ruokolainen <teemu.p.ruokolainen@gmail.com> Co-authored-by: chris <c.mcgreavy@hotmail.com> * Cm test docs (#76) * edited branch name for doc building * test actions * added jekyll options * removed settings * fixed gh pages deployment * Cm add docs (#77) * changed copyright year * updated readme headings * moved tutorials from readme to docs * removed tutorials from readme * added getting started page to index toc * Update python=3.8 to python=3.10 in readme * Cm feature add tests (#80) * bumped version number * add pilot example test * simplified core.py * improved naming and docs in core * progress tracker. -> * added example script iteration * fixed loop error msg in COre * updated progress tracker naming (#71) * fixed for loop logic and error handling in core (#72) * Cm fix tracker loops (#73) * fixed for loop logic and error handling in core * fixed tracker dict population for loops * Fix Progess Tracker naming Removing Initialiser name requirement from Progress Tracker * Remove Canvas if there are no ccordinates * Fixing last fix. Correctly read modules inside loop * Fix error with coordinates case * minor typo fix in core * renamed .s variable to .xml_handler for readability * fixed xml_handler naming in GUI_Core * Trying to fix coordinates case * moved avail_plugins to init * Display treeview for no-coordinates case (need fixes)) * FIX - Consistent input and output naming issue * Functioning progress tracker for coord and no coord * Fixed list plugin options issues * Minor fixes to test usability * changed avail plugins options to readable names * removed private and test files from avail_plugins * removed old xml files, mod pybullet * Fix parent issue * fixed pybullet and canvas gui-test issues * fixed pytest errors (except manual plugin) * changed sklearn->scikit-learn in toml * added pybullet to toml * Remove testing file * test fix with scalar * translate boolean literals * removed python 3.8,3.9 * added param to ridge example * removed closed check from core * switced core check to _debug --------- Co-authored-by: Carlos Sevilla Salcedo <carlossevillasalcedo@gmail.com> --------- Co-authored-by: Carlos Sevilla Salcedo <carlossevillasalcedo@gmail.com> * Fix examples path in README.md * Another bad examples path * update conda env part in README.md * fixed calls to undefined parent (#90) * Added Bayesian Optimisation plugin * Fix merge errors * Remove old run file * Modify plugin types * Addoptions to BO * Css feature trying to catch errors (#94) * Move Modelling plugins functions to template * Add clsutering methods to template * Change function doc * Move DataProcessing plugins functions to template * Update pipeline for testing * Update init * Fix conflicts * Add DecisionMaking plugin template * Fixing issues with Optimisation module * Fixed errors passing params to BO * Changed plugin Template to work for BO params Still need to fix issue when running the BO * BO suggests points correctly * Change xml_handler naming Change xml_handler naming to fit with the other UIs * Typo correction * Added bayes_opt optimisation plugin * Modify integral to simpson * Fixed issue with UI --------- Co-authored-by: cam586 <c.mcgreavy@hotmail.com> Co-authored-by: teemu <teemu.ruokolainen@iki.fi> Co-authored-by: Teemu Ruokolainen <teemu.p.ruokolainen@gmail.com> Co-authored-by: Richard Darst <rkd@zgib.net> * Fix issue with example * Added basic dataFlow selection * Fixed issue with module list * Remove option of data self-looping * Add plugin's data input to XML * Fixed error with ridge regression * Added new data reading option * Fix minor errors * Define data communication Redifined data passing and reading between different modules. `vai_lab_core` now stores all output data for each module and could be accessible by any module. Not tested on loops. * Fixed issue duplicated module entries Still need to fix issue with module name reading. * Fixed names used to define input * Clean some example files * Remove testing print * Add output module as editable * Include a checklist for output data * Fixed issue with output update * Write output data in XML file working * Include output path for outdata * Storing output in file * Fix space reading * Allow one or more stored module output * Update XML examples to dataflow * Store relative path * Add option of relative or absolute path * Allow relative path * Change input data definition to optionmenu * By default store output of last module * Update example coordinates * Improve look of output data's optionmenu --------- Co-authored-by: cam586 <c.mcgreavy@hotmail.com> Co-authored-by: teemu <teemu.ruokolainen@iki.fi> Co-authored-by: Teemu Ruokolainen <teemu.p.ruokolainen@gmail.com> Co-authored-by: Richard Darst <rkd@zgib.net>
- Fixed issue storing options from methods - Removed 'Data' for DataProcessing modules - Make correct comparison to determine if options are updated - Correctly store method's data input. Stores name of variable.
Still need to fill the treeview with the previously set options and functions.
It now displays the options as a string. For exmaple, it now shows "(0, 1)" for a tuple instead of "0 1"
ruokolt
approved these changes
Oct 5, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Purpose
Let user specify which methods they want to use.
In brief
Method selection
Each plugin can have multiple functions in it. Besides, each method can have its own options, which are directly read from the plugin's original library.
XML changes
The tag
method
is now available. This can be added to each plugin to indicate which function from the plugin needs to be executed by passing it's name intype
. It's order sensitive as the methods will be executed in the same order they are defined. You can now use the tagoptions
rigth inside the plugin or inside a method, defining the plugin's initialisation options or the method's options, respectively.Plugin GUI
When indicating the plugin for each module it also asks if you want to add a method to the plugin. To do so, there is a dropdown menu with all the available functions* along with some buttons to add, delete or move each method. There's a default
__init__
method that contains all options available when loading a model. Upon adding a new method, the options available for that method are also displayed and can be modified.*Note: as of right now we are only offering the functions that are defined in both the template and the original library. This should be changed in the future.
When an option's name is either
X
orY
**, the GUI creates a dropdown menu for it's value, displaying the uploaded data. This data will then be approprately passed to the method.**Note: This should be changed in the future to account for different data names.
Progress tracker
The progress tracker functionaility has been adapted to load the methods from the XML as well as the preloaded options. This allows the user to modify not only the base options of the model, but also which methods need to be executed and in which order. Furthermore, it loads any previously defined options for each method to facilitate the modification of any of them.