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

Feedback #1

Open
wants to merge 51 commits into
base: feedback
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
d557b81
Setting up GitHub Classroom Feedback
github-classroom[bot] Mar 27, 2024
c4f839a
add online IDE url
github-classroom[bot] Mar 27, 2024
c3ccfcf
initial schwefel funciton definition
jrhmanning Mar 27, 2024
4c704e9
moved into src
jrhmanning Mar 27, 2024
b3419c1
initial commit of BayBE quickstart tutorial
jrhmanning Mar 27, 2024
a2b654b
fixed minimum working example of a BayBE campaign
jrhmanning Mar 27, 2024
e5dc251
schwefel class
Queimo Mar 27, 2024
f12d411
Initial minimum working example of BayBE with no noise
jrhmanning Mar 27, 2024
9cd61b2
Update GitHub Classroom Autograding Workflow
github-classroom[bot] Mar 27, 2024
6d310ba
Update GitHub Classroom Autograding Workflow
github-classroom[bot] Mar 27, 2024
e62944b
BO loop, run experiment comparing noisy GP vs noiseless GP
Queimo Mar 27, 2024
41b8245
Run grid study using ray to parallelize workload
Queimo Mar 27, 2024
99f5d5a
pull karims schwefel class onto this branch
brendenpelkie Mar 27, 2024
504934b
notebook of BayBE grid search example
brendenpelkie Mar 27, 2024
1f0cda8
utilities for baybe and visualization
brendenpelkie Mar 27, 2024
7f6a573
nuke grading
brendenpelkie Mar 27, 2024
d8d0e3c
remove template workflows
brendenpelkie Mar 27, 2024
8a2a61d
remove classroom.yml
brendenpelkie Mar 27, 2024
0d1cd46
Merge pull request #2 from AC-BO-Hackathon/BayBE
brendenpelkie Mar 27, 2024
bcf7794
Update README.md
brendenpelkie Mar 27, 2024
2d8205b
notebook updates
brendenpelkie Mar 28, 2024
b05b10e
merge
brendenpelkie Mar 28, 2024
3c82b87
fix merge
brendenpelkie Mar 28, 2024
e9119ef
update
Queimo Mar 28, 2024
a403cc2
add range params to schwefel generator
brendenpelkie Mar 28, 2024
a61d359
add range parameters;
brendenpelkie Mar 28, 2024
b01577b
merge
brendenpelkie Mar 28, 2024
cf0aad4
simulate expriment MWE
jrhmanning Mar 28, 2024
863ceac
make schwefel word in nd
Queimo Mar 28, 2024
c477a05
Merge branch 'main' of https://github.com/AC-BO-Hackathon/project-pro…
Queimo Mar 28, 2024
cbedbb8
todo fix plots
Queimo Mar 28, 2024
a5dcec5
fix
Queimo Mar 28, 2024
168611d
initial baybe run experiment
brendenpelkie Mar 28, 2024
a998ea4
merge
brendenpelkie Mar 28, 2024
f6c4ae3
baybe with karims framework
brendenpelkie Mar 28, 2024
27a1d0d
add baybe karim grid search notebook
brendenpelkie Mar 28, 2024
389927d
changes
Queimo Mar 28, 2024
0f8f32f
Merge branch 'main' of https://github.com/AC-BO-Hackathon/project-pro…
Queimo Mar 28, 2024
e251950
baybe grid search stuff
brendenpelkie Mar 28, 2024
6e8a863
merge
brendenpelkie Mar 28, 2024
c7078c2
update
Queimo Mar 28, 2024
9403f52
botorch matrix plot
Queimo Mar 28, 2024
5cd1815
final
Queimo Mar 28, 2024
e3e973f
botorch final heatmaps after 30
Queimo Mar 28, 2024
4d65281
add: trial notebooks
Mar 28, 2024
f78df9a
GitHub Classroom Autograding Workflow
github-classroom[bot] Mar 29, 2024
57b8ea9
refactor and combined_botorch_baybe...
utkarshp1161 Mar 30, 2024
f53fd96
run
brendenpelkie Apr 2, 2024
0b51506
merge
brendenpelkie Apr 2, 2024
0c8c41b
work on 2 fronts: 1. Clean up BayBE workflow into a single standalone…
brendenpelkie Apr 3, 2024
eb306fe
clean up baybe work into some notebooks and repo reorganization
brendenpelkie Apr 12, 2024
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
5 changes: 4 additions & 1 deletion .github/workflows/classroom.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,11 @@ jobs:
uses: actions/checkout@v4
- name: Hello world test
id: hello-world-test
uses: education/autograding-python-grader@v1
uses: education/autograding-command-grader@v1
with:
test-name: Hello world test
setup-command: sudo -H pip3 install pytest
command: pytest
timeout: 5
max-score: 5
- name: Autograding Reporter
Expand Down
18 changes: 0 additions & 18 deletions .github/workflows/docker-image.yml

This file was deleted.

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@
*.pyc
.coverage
*.egg-info/
*.pt
23 changes: 13 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,18 @@
# Autograding Example: Python
This example project is written in Python, and tested with pytest.
# Project 23: Reliable Surrogate Models of Noisy Data

## The assignment
The tests are failing right now because the method isn't outputting the correct string. Fixing this up will make the tests green.

## Setup command
This project was part of the 2024 Bayesian Optimization Hackathon for Chemistry and Materials (https://ac-bo-hackathon.github.io/). The goal of this project was to explore the impact of noisy measurements on the performance of various Bayesian optimizers. We explored this problem using both the BayBE package as well as BoTorch. The BoTorch version evaluated the impact of incorporating noise assumptions in the surrogate model, while the BayBE approach uses the default BayBE model which does incorporate some noise assumptions (?). We used the 2-dimensional Schwefel function as a minimization target. This function has a global minimum at ~[420, 420]. We mainly evaluated the optmimization methods in the range of [-50,50]. Over this range the Schwefel function has high frequency optimizations leading to many local minima, making this a challenging optimization problem.

See `postCreateCommand` from [`devcontainer.json`](.devcontainer/devcontainer.json).
## Guide to Project:

## Run command
`pytest`
1. BoTorch arm: The BoTorch half of the project can be viewed in the `analyse_grid_experiment.ipynb`, `botorch_results_plots.ipnb`', and `line_plot.ipynb` notebooks. Source code is in `run_experiment.py`. `run_grid_botorch.py`, and `run_grid_experiments.py`.

## Notes
- pip's install path is not included in the PATH var by default, so without installing via `sudo -H`, pytest would be unaccessible.
2. The BayBE half of the project can be viewed in the `noisy_optimization_BayBE_original_bounds.ipynb` (for [-50,50] bounds) and `noisy_optimization_BayBE_extendedBounds.ipynb` (for [0,500] bounds). Source code is in src/baybe_utils.

## Team

- Darby Brown
- Karim Ben Hicham
- Joe Manning
- Brenden Pelkie
- Utkarsh Pratiush
1,438 changes: 1,438 additions & 0 deletions analyse_grid_experiment.ipynb

Large diffs are not rendered by default.

177 changes: 177 additions & 0 deletions botorch_results_plots.ipynb

Large diffs are not rendered by default.

369 changes: 369 additions & 0 deletions combined_botorch_baybe_final.ipynb

Large diffs are not rendered by default.

341 changes: 341 additions & 0 deletions comparison.ipynb

Large diffs are not rendered by default.

2 changes: 0 additions & 2 deletions hello.py

This file was deleted.

5 changes: 0 additions & 5 deletions hello_test.py

This file was deleted.

337 changes: 337 additions & 0 deletions line_plot.ipynb

Large diffs are not rendered by default.

Loading
Loading