Skip to content
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

Feature/fix resume nm #40

Merged
merged 3 commits into from
Aug 23, 2022
Merged

Feature/fix resume nm #40

merged 3 commits into from
Aug 23, 2022

Conversation

KanaiYuma-aist
Copy link
Collaborator

Fixed ValueError when resuming twice using NM. (issue #33)

@github-actions
Copy link

github-actions bot commented Aug 19, 2022

Unit Test Results

238 tests  ±0   238 ✔️ ±0   36s ⏱️ ±0s
    1 suites ±0       0 💤 ±0 
    1 files   ±0       0 ±0 

Results for commit ee81787. ± Comparison against base commit 917fd7d.

♻️ This comment has been updated with latest results.

@KanaiYuma-aist
Copy link
Collaborator Author

KanaiYuma-aist commented Aug 19, 2022

Fixed a bug that reading (deserialize) fyr_order in work/state/*/optimizer.py failed when resuming twice using NM.
I assume that the proper behavior is appending v instead of appending dict_objects['_history'][key].
I compared the code before the change without resume and the code after the change with resume and confirmed that there is no difference except for the loop_count: in the contents of work/state/*/optimizer.py.

Work without resume before change of code
NM_no_resume_work.tar.gz

Work with resume after change of code (resume in 5,10trial)
NM_resume_fix_work.tar.gz

@tkokada
If there are any problems with implementation, please comment.


NMを用いて2回resumeすると、work/state/*/optimizer.py 内の fyr_order の読み込み(deserialize)に失敗する現象を修正しました。
dict_objects['_history'][key] を append するのではなく、 v を append するのが正しい挙動ではないかと推測します。
変更前のコードでresume無しで実行するのと、変更後のコードでresume有りで実行するので比較して、
work/state/*/optimizer.py の内容に差分が loop_count: 以外存在しないことは確認済みです。

実装に問題があれば、コメント下さい。

@KanaiYuma-aist KanaiYuma-aist requested review from aramoto99, tkokada and yoshipon and removed request for yoshipon August 19, 2022 05:15
Copy link
Collaborator

@aramoto99 aramoto99 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tkokada
The problem is the list named fyr_order, which is not used for the nm-calcuration in the first place, so I thought it would be OK to remove it.
Is there a possibility that fyr_order will be utilized in the future?

@tkokada
Copy link
Collaborator

tkokada commented Aug 22, 2022

@KanaiYuma-aist @aramoto99 You are right. fyr_order is not used anywhere...

@aramoto99 aramoto99 merged commit 8102997 into main Aug 23, 2022
@aramoto99 aramoto99 deleted the feature/fix_resume_NM branch August 24, 2022 05:01
yoshipon added a commit that referenced this pull request Aug 26, 2022
* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* fix codestyle test (#26)

* fix for pycodestyle

* add flake8==4.0.1

* Feature/update readme (#25)

* update README

* add bash

Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Fix TPE resumtion test (#29)

* Fix tpe resumption test

* fix tpe resumption test

* Fix tep resumption test

* add retry (#38)

* Add dynamic loading of optimizer (#34)

* (WIP) Add dynamic loading of optimizer by importlib.

* (WIP) Add dynamic loading of optimizer by importlib.

* Add dynamic loading of optimizer by importlib

* Add dynamic loading of optimizer by importlib

* Fix test code

* fix test

* Fix resumtioin test

* Add dynamic loading of optimizer

* Fix dynamic loading of optimizer

* Function names and comments were rolled back.

* Changed the standard optimizer specification method

* changed the specification method for importing the standard optimizer.

* change deserialize (#40)

Co-authored-by: aramoto99 <aramoto-masahiro@aist.go.jp>

* Merge branch 'main' of github:aistairc/aiaccel into feature/database

* Fix codestyle

* (WIP) Change TPE resume

* Fix resume test

* Feature/fix resume tpe (#41)

* fix resume tpe

* fix resume tpe

* add if len(running_trials) > 0

* fix about trial number

* Fix TPE resumption

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>
Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>
yoshipon added a commit that referenced this pull request Aug 26, 2022
* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* fix codestyle test (#26)

* fix for pycodestyle

* add flake8==4.0.1

* Feature/update readme (#25)

* update README

* add bash

Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Fix TPE resumtion test (#29)

* Fix tpe resumption test

* fix tpe resumption test

* Fix tep resumption test

* add retry (#38)

* Add dynamic loading of optimizer (#34)

* (WIP) Add dynamic loading of optimizer by importlib.

* (WIP) Add dynamic loading of optimizer by importlib.

* Add dynamic loading of optimizer by importlib

* Add dynamic loading of optimizer by importlib

* Fix test code

* fix test

* Fix resumtioin test

* Add dynamic loading of optimizer

* Fix dynamic loading of optimizer

* Function names and comments were rolled back.

* Changed the standard optimizer specification method

* changed the specification method for importing the standard optimizer.

* change deserialize (#40)

Co-authored-by: aramoto99 <aramoto-masahiro@aist.go.jp>

* Merge branch 'main' of github:aistairc/aiaccel into feature/database

* Fix codestyle

* (WIP) Change TPE resume

* Fix resume test

* Feature/fix resume tpe (#41)

* fix resume tpe

* fix resume tpe

* add if len(running_trials) > 0

* fix about trial number

* Fix TPE resumption

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>
Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>
yoshipon added a commit that referenced this pull request Aug 30, 2022
* Data management function by database is added.
By adding the `--fs` option argument to the startup command, data management functions by the conventional file system can be used.
Extensive refactoring was performed around the addition of this functionality.

* Update setup.py

* Delete tests/test_data/work/state/ as it is not used in develop/database.

* Develop/database fix test (#18)

* fix for tests

* delete space

* pInfoDict -> p_info

* Merge main into debelop/database (#31)

* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* fix codestyle test (#26)

* fix for pycodestyle

* add flake8==4.0.1

* Feature/update readme (#25)

* update README

* add bash

Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Fix resumption test for DB

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>
Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Feature/database (#36)

* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* Fixed a problem in which Snapshot could not be saved during parallel execution.

* Add function of delete any data in DB/FS.

* Fix code style

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>

* Request to merge cumulative changes . (#37)

* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* The report generation function can now be called by command.

* Fix data inconsistency when excute resume. (#39)

* Fix resume

* Fixed problem with sirialize not working in fs mode

* Remove unused package imports

* Fixed a problem that the resume function did not work in fs mode.

* The name workspace/state is the name of the old specification, so it was changed to the appropriate name workspace/snapshot.

* Delete unnecessary directories in Workspace.

* Delete unnecessary directories in Workspace.

* Delete unnecessary directories in Workspace.

* Delete unnecessary directories in Workspace.

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>

* Add dynamic loading of optimizer, And fix resumtion test. (#42)

* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* fix codestyle test (#26)

* fix for pycodestyle

* add flake8==4.0.1

* Feature/update readme (#25)

* update README

* add bash

Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Fix TPE resumtion test (#29)

* Fix tpe resumption test

* fix tpe resumption test

* Fix tep resumption test

* add retry (#38)

* Add dynamic loading of optimizer (#34)

* (WIP) Add dynamic loading of optimizer by importlib.

* (WIP) Add dynamic loading of optimizer by importlib.

* Add dynamic loading of optimizer by importlib

* Add dynamic loading of optimizer by importlib

* Fix test code

* fix test

* Fix resumtioin test

* Add dynamic loading of optimizer

* Fix dynamic loading of optimizer

* Function names and comments were rolled back.

* Changed the standard optimizer specification method

* changed the specification method for importing the standard optimizer.

* change deserialize (#40)

Co-authored-by: aramoto99 <aramoto-masahiro@aist.go.jp>

* Merge branch 'main' of github:aistairc/aiaccel into feature/database

* Fix codestyle

* (WIP) Change TPE resume

* Fix resume test

* Feature/fix resume tpe (#41)

* fix resume tpe

* fix resume tpe

* add if len(running_trials) > 0

* fix about trial number

* Fix TPE resumption

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>
Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Fix conflicts with main branch (#43)

* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* fix codestyle test (#26)

* fix for pycodestyle

* add flake8==4.0.1

* Feature/update readme (#25)

* update README

* add bash

Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Fix TPE resumtion test (#29)

* Fix tpe resumption test

* fix tpe resumption test

* Fix tep resumption test

* add retry (#38)

* Add dynamic loading of optimizer (#34)

* (WIP) Add dynamic loading of optimizer by importlib.

* (WIP) Add dynamic loading of optimizer by importlib.

* Add dynamic loading of optimizer by importlib

* Add dynamic loading of optimizer by importlib

* Fix test code

* fix test

* Fix resumtioin test

* Add dynamic loading of optimizer

* Fix dynamic loading of optimizer

* Function names and comments were rolled back.

* Changed the standard optimizer specification method

* changed the specification method for importing the standard optimizer.

* change deserialize (#40)

Co-authored-by: aramoto99 <aramoto-masahiro@aist.go.jp>

* Merge branch 'main' of github:aistairc/aiaccel into feature/database

* Fix codestyle

* (WIP) Change TPE resume

* Fix resume test

* Feature/fix resume tpe (#41)

* fix resume tpe

* fix resume tpe

* add if len(running_trials) > 0

* fix about trial number

* Fix TPE resumption

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>
Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Fix codestyle

Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>
Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>
aramoto99 added a commit that referenced this pull request Aug 30, 2022
* Data management function by database is added.
By adding the `--fs` option argument to the startup command, data management functions by the conventional file system can be used.
Extensive refactoring was performed around the addition of this functionality.

* Update setup.py

* Delete tests/test_data/work/state/ as it is not used in develop/database.

* Develop/database fix test (#18)

* fix for tests

* delete space

* pInfoDict -> p_info

* Merge main into debelop/database (#31)

* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* fix codestyle test (#26)

* fix for pycodestyle

* add flake8==4.0.1

* Feature/update readme (#25)

* update README

* add bash

Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Fix resumption test for DB

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>
Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Feature/database (#36)

* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* Fixed a problem in which Snapshot could not be saved during parallel execution.

* Add function of delete any data in DB/FS.

* Fix code style

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>

* Request to merge cumulative changes . (#37)

* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* The report generation function can now be called by command.

* Fix data inconsistency when excute resume. (#39)

* Fix resume

* Fixed problem with sirialize not working in fs mode

* Remove unused package imports

* Fixed a problem that the resume function did not work in fs mode.

* The name workspace/state is the name of the old specification, so it was changed to the appropriate name workspace/snapshot.

* Delete unnecessary directories in Workspace.

* Delete unnecessary directories in Workspace.

* Delete unnecessary directories in Workspace.

* Delete unnecessary directories in Workspace.

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>

* Add dynamic loading of optimizer, And fix resumtion test. (#42)

* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* fix codestyle test (#26)

* fix for pycodestyle

* add flake8==4.0.1

* Feature/update readme (#25)

* update README

* add bash

Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Fix TPE resumtion test (#29)

* Fix tpe resumption test

* fix tpe resumption test

* Fix tep resumption test

* add retry (#38)

* Add dynamic loading of optimizer (#34)

* (WIP) Add dynamic loading of optimizer by importlib.

* (WIP) Add dynamic loading of optimizer by importlib.

* Add dynamic loading of optimizer by importlib

* Add dynamic loading of optimizer by importlib

* Fix test code

* fix test

* Fix resumtioin test

* Add dynamic loading of optimizer

* Fix dynamic loading of optimizer

* Function names and comments were rolled back.

* Changed the standard optimizer specification method

* changed the specification method for importing the standard optimizer.

* change deserialize (#40)

Co-authored-by: aramoto99 <aramoto-masahiro@aist.go.jp>

* Merge branch 'main' of github:aistairc/aiaccel into feature/database

* Fix codestyle

* (WIP) Change TPE resume

* Fix resume test

* Feature/fix resume tpe (#41)

* fix resume tpe

* fix resume tpe

* add if len(running_trials) > 0

* fix about trial number

* Fix TPE resumption

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>
Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Fix conflicts with main branch (#43)

* Fix #19 (#20)

* Fix #21 (#22)

* fix README (#23)

* fix codestyle test (#26)

* fix for pycodestyle

* add flake8==4.0.1

* Feature/update readme (#25)

* update README

* add bash

Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* Fix TPE resumtion test (#29)

* Fix tpe resumption test

* fix tpe resumption test

* Fix tep resumption test

* add retry (#38)

* Add dynamic loading of optimizer (#34)

* (WIP) Add dynamic loading of optimizer by importlib.

* (WIP) Add dynamic loading of optimizer by importlib.

* Add dynamic loading of optimizer by importlib

* Add dynamic loading of optimizer by importlib

* Fix test code

* fix test

* Fix resumtioin test

* Add dynamic loading of optimizer

* Fix dynamic loading of optimizer

* Function names and comments were rolled back.

* Changed the standard optimizer specification method

* changed the specification method for importing the standard optimizer.

* change deserialize (#40)

Co-authored-by: aramoto99 <aramoto-masahiro@aist.go.jp>

* Merge branch 'main' of github:aistairc/aiaccel into feature/database

* Fix codestyle

* (WIP) Change TPE resume

* Fix resume test

* Feature/fix resume tpe (#41)

* fix resume tpe

* fix resume tpe

* add if len(running_trials) > 0

* fix about trial number

* Fix TPE resumption

Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: KanaiYuma-aist <105629713+KanaiYuma-aist@users.noreply.github.com>
Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>

* change serialize timing

Co-authored-by: aramoto99 <aramoto-masahiro@aist.go.jp>
Co-authored-by: aramoto99 <107896581+aramoto99@users.noreply.github.com>
Co-authored-by: Takashi OKADA <tk.okada.github@gmail.com>
Co-authored-by: Yoshiaki Bando <yoshipon@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants