Skip to content

Add classes for calibrating average ensemble and ensemble of tragedies #1048

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

Open
wants to merge 105 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
105 commits
Select commit Hold shift + click to select a range
5d8278e
Initial draft for calibration from scipy.optimize
peanutfun Mar 31, 2023
443545e
Draft for impact function calibration
peanutfun May 4, 2023
819aab5
Add first unit tests of calibration module
peanutfun May 5, 2023
96e3cb3
ci: Add bayesian-optimization during Jenkins build
peanutfun May 5, 2023
123c632
Add __init__.py for util/calibarte/test module
peanutfun May 8, 2023
107a836
Add climada.util.calibrate.test module to test discovery
peanutfun May 8, 2023
2af6f09
Add unit and integration tests, update code base
peanutfun May 8, 2023
0d6e80b
Start documenting new calibrate module
peanutfun May 8, 2023
23cae6c
Actually add the intregration test
peanutfun May 8, 2023
50f3fd9
Add some documentation
peanutfun May 9, 2023
d321832
commit PLEASE CLEAN UP
peanutfun May 17, 2023
24c0fbc
Add more docstrings and simplify imports through __init__
peanutfun May 24, 2023
096a8d4
Add separate Output classes for each optimizer
peanutfun Jun 9, 2023
37c65d9
Merge branch 'develop' into calibrate-impact-functions
peanutfun Jun 9, 2023
e8abb1a
Restructure calibration module
peanutfun Jun 12, 2023
3d94151
Add tutorial on impact function calibration
peanutfun Jun 12, 2023
ea0eb47
Update tutorial
peanutfun Jun 13, 2023
0e5a557
Remove hazard event selection from calibrate.Input
peanutfun Jun 13, 2023
e1fe68a
Update calibration tutorial
peanutfun Jun 13, 2023
68c421b
Merge branch 'develop' into calibrate-impact-functions
emanuel-schmid Jun 26, 2023
df03b0d
Update climada/util/calibrate/bayesian_optimizer.py
peanutfun Jun 28, 2023
5ef4a01
Separate computing cost from transforming impact objects
peanutfun Jun 29, 2023
91cfd83
Merge branch 'calibrate-impact-functions' of https://github.com/CLIMA…
peanutfun Jul 10, 2023
4e1f104
Add evaluator for calibration output
peanutfun Jul 10, 2023
43f40b3
Add TestBayesianOptimizer test to test loader
peanutfun Jul 13, 2023
97d763a
Update code, docs, and tutorial
peanutfun Aug 3, 2023
d43eb8a
Update tutorial
peanutfun Aug 3, 2023
dda079d
Add option to adjust data frame alignment
peanutfun Aug 18, 2023
185866f
Merge branch 'develop' into calibrate-impact-functions
peanutfun Aug 21, 2023
5fdbf4e
Merge branch 'develop' into calibrate-impact-functions
peanutfun Sep 6, 2023
c2ede47
Merge branch 'develop' into calibrate-impact-functions
peanutfun Sep 20, 2023
c40b85a
Merge branch 'develop' into calibrate-impact-functions
peanutfun Oct 2, 2023
645862a
Merge branch 'develop' into calibrate-impact-functions
peanutfun Oct 26, 2023
357541a
Merge branch 'develop' into calibrate-impact-functions
emanuel-schmid Nov 9, 2023
2e536ef
add seaborn
emanuel-schmid Nov 9, 2023
2ace55f
Add function to plot Impf variability of calibration (#791)
timschmi95 Nov 14, 2023
423b5b8
Improve alignment and handling of NaNs
peanutfun Nov 15, 2023
8349016
Add seaborn to dependencies
peanutfun Nov 15, 2023
67ef797
Merge branch 'calibrate-impact-functions' of https://github.com/CLIMA…
peanutfun Nov 20, 2023
24c1fc3
Split tests into multiple files, finish up
peanutfun Nov 23, 2023
1538e78
Move impact transform and align to Input
peanutfun Nov 23, 2023
832da6a
Use MultiIndex in parameter space dataframe
peanutfun Nov 23, 2023
af959a7
Update tutorial
peanutfun Nov 23, 2023
042e6c9
Fix requirements for calibration module
peanutfun Nov 24, 2023
677fba9
Remove plot_impf_set function and improve exception type
peanutfun Nov 24, 2023
3a046c7
Add tests for OutputEvaluator
peanutfun Nov 24, 2023
066afe5
Fix name of bayes_opt package on PyPI
peanutfun Nov 24, 2023
fbc1701
Make sure latest seaborn is installed on Jenkins
peanutfun Nov 24, 2023
2986b51
Remove unused function definition
peanutfun Nov 24, 2023
8ab8600
Fix linter issues and remove unused code
peanutfun Nov 24, 2023
85a5826
Add BayesianOptimizerOutputEvaluator
peanutfun Nov 24, 2023
472d0c5
Fix typo in tutorial
peanutfun Nov 24, 2023
6ef09e5
Add GNU license header to new files
peanutfun Nov 24, 2023
661f991
Update CHANGELOG.md
peanutfun Nov 24, 2023
90f2749
edit authors.md
Nov 27, 2023
53feef6
Fix a bug in parameter space plot
peanutfun Nov 28, 2023
b6357a6
Merge branch 'calibrate-impact-functions' into cross-calibrate-impact…
peanutfun Nov 28, 2023
6654358
Add ensemble calibrators
peanutfun Nov 28, 2023
8a20d9f
Fix issue with constraints and allow_duplicate_points
peanutfun Nov 28, 2023
1981fe9
Fix bug in to_input_var
peanutfun Nov 29, 2023
149167f
Increment random seed and update output handling
peanutfun Dec 4, 2023
3abb8bd
Make EnsembleOptimizer run in parallel
peanutfun Dec 5, 2023
5505522
Add docstring to EnsembleOptimizer.run
peanutfun Dec 5, 2023
6fa9315
Merge branch 'develop' into calibrate-impact-functions
peanutfun Jan 30, 2024
d4d6777
Add suggestions from code review
peanutfun Jan 30, 2024
2b5e4f5
Update cross-calibration module
peanutfun Jan 31, 2024
6cf05f5
Add unit tests for cross calibration
peanutfun Jan 31, 2024
29dfac8
Avoid errors when storing event names in cross calibration output
peanutfun Feb 8, 2024
a0bada5
Add iteration controller for BayesianOptimizer
peanutfun Feb 20, 2024
cab68c4
Fix calibrate module init and add first controller tests
peanutfun Feb 20, 2024
5da043c
Merge branch 'calibrate-impact-functions' into cross-calibrate-impact…
peanutfun Feb 20, 2024
a9c45d7
Merge branch 'develop' into calibrate-impact-functions
peanutfun Feb 20, 2024
b5faf07
Merge branch 'calibrate-impact-functions' into cross-calibrate-impact…
peanutfun Feb 20, 2024
0055c64
Deepcopy optimizer run kwargs and add hazard intensity histogram to s…
peanutfun Feb 21, 2024
9bf050c
Fix handling of instance maximum for constrained optimization
peanutfun Feb 21, 2024
6f22366
Merge branch 'calibrate-impact-functions' into cross-calibrate-impact…
peanutfun Feb 21, 2024
17046db
Merge branch 'develop' into calibrate-impact-functions
peanutfun Feb 23, 2024
72f6263
Add tests for BayesianOptimizerController and fix verbosity
peanutfun Feb 23, 2024
5a8ac9f
Add test for plotting parameter space
peanutfun Feb 23, 2024
01f0f1c
Update integration tests for BayesianOptimizer
peanutfun Feb 23, 2024
b8f1cac
Add explanation of BayesianOptimizerController to tutorial
peanutfun Feb 23, 2024
a39eb36
Merge branch 'calibrate-impact-functions' into cross-calibrate-impact…
peanutfun Feb 23, 2024
951149b
add preliminary plot_category function
Mar 13, 2024
10e9679
Merge branch 'develop' into calibrate-impact-functions
emanuel-schmid Mar 14, 2024
3947bef
Add option to reduce tragedy ensemble size
peanutfun Apr 26, 2024
2326db2
Add option to store and load calibration results
peanutfun Apr 26, 2024
94ea629
Merge branch 'calibrate-impact-functions' into cross-calibrate-impact…
peanutfun Apr 26, 2024
e270e1a
Merge branch 'develop' into calibrate-impact-functions
peanutfun Apr 29, 2024
fbdeff0
Merge branch 'develop' into cross-calibrate-impact-functions
peanutfun Apr 29, 2024
5e2dd75
Update plots and tutorial
peanutfun Apr 29, 2024
1d9f508
Merge branch 'calibrate-impact-functions' into cross-calibrate-impact…
peanutfun May 2, 2024
72ccfc9
Merge branch 'develop' into cross-calibrate-impact-functions
peanutfun Jul 19, 2024
e8eb7f6
Merge branch 'develop' into cross-calibrate-impact-functions
peanutfun Dec 20, 2024
f360053
Merge branch 'develop' into cross-calibrate-impact-functions
peanutfun Mar 13, 2025
2ae7341
Merge branch 'develop' into cross-calibrate-impact-functions
peanutfun Apr 17, 2025
5ab9e91
Fix annotations, docstrings, some linter issues
peanutfun Apr 23, 2025
c0d95e5
Add tests for cross_calibrate.py
peanutfun Apr 24, 2025
5681eaf
Add test execution to test_cross_calibrate.py
peanutfun Apr 24, 2025
7ebff09
Update plots, tests, docstrings, docs
peanutfun Apr 24, 2025
e9cf7dd
Rename cross_calibrate.py to ensemble.py
peanutfun Apr 24, 2025
25d89b0
Improve plots, add 'replace' parameter to AverageEnsembleOptimizer
peanutfun Apr 24, 2025
57cd23f
Add ensemble calibration to tutorial
peanutfun Apr 24, 2025
b19c3e3
Remove custom changes to Jenkins script
peanutfun May 9, 2025
10d86dc
Beautify plot
peanutfun May 9, 2025
821d7c0
Update calibation tutorial
peanutfun May 9, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -285,6 +285,7 @@ Removed:

### Added

- `climada.util.calibrate` module for calibrating impact functions [#692](https://github.com/CLIMADA-project/climada_python/pull/692)
- Convenience method `api_client.Client.get_dataset_file`, combining `get_dataset_info` and `download_dataset`, returning a single file objet. [#821](https://github.com/CLIMADA-project/climada_python/pull/821)
- Read and Write methods to and from csv files for the `DiscRates` class. [#818](ttps://github.com/CLIMADA-project/climada_python/pull/818)
- Add `CalcDeltaClimate` to unsequa module to allow uncertainty and sensitivity analysis of impact change calculations [#844](https://github.com/CLIMADA-project/climada_python/pull/844)
Expand Down
5 changes: 5 additions & 0 deletions climada/util/calibrate/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,9 @@
BayesianOptimizerOutputEvaluator,
select_best,
)
from .ensemble import (
AverageEnsembleOptimizer,
EnsembleOptimizerOutput,
TragedyEnsembleOptimizer,
)
from .scipy_optimizer import ScipyMinimizeOptimizer
Loading
Loading