title | menu_title | menu_icon |
---|---|---|
Submit a Project |
Submission |
cloud-arrow-up |
Project proposals are submitted by hackathon participants, where the submitter intends to lead that project and form a team (or work on it solo) during the hackathon. Some people might already have a team in mind while others might add team members after submitting the proposal. Likewise, there will be people who want to join an existing team instead of proposing their own project. The slack channel is the primary communication channel for brainstorming project ideas and forming teams.
See below for the project topics and instructions on how to submit a project proposal.
While a list of topics is provided, we are open to new ideas. If you have a project in mind that doesn't fit into one of the topics below, you are welcome and encouraged to submit a project proposal for it.
We will provide a set of prepackaged benchmark tasks and instructions, and your job will be to choose a package or algorithm and apply it to task(s) of your choice. The tasks will cover a broad range of both optimization complexity and application domains. Submissions that demonstrate algorithm performance on the hackathon-supplied benchmarks falls under the benchmark-task
topic, but if the focus is on comparing algorithm performance on existing benchmarks that aren't part of the hackathon set, but not necessarily on creating an entirely new benchmark, this can go into either the benchmark-task
or general
topic.
We are still refining the list of benchmark tasks. Please contact us or share a comment in the linked Google spreadsheet if you have suggestions for existing optimization benchmark datasets or tasks that you would like to see included.
- Analytical functions
- Molecule Optimization
- Materials Optimization
- Multi-fidelity Optimization
- Constrained Optimization
- Multi-objective Optimization
- Real-world noise
Ideally, these tasks will be representative of real-world problems in chemistry and materials science. While remotely accessible automated experiments would be the gold standard, the more pragmatic benchmark tasks typically include surrogate modeling. The new benchmark tasks should lean towards real-world conditions in terms of optimization problem type (objectives, fidelities, constraints) and/or relevance towards chemistry and materials applications (e.g., molecules, materials, reactions, etc.).
We have a set of topics in Bayesian optimization attached with the planned AC data science microcourse, and your job will be to create a tutorial that introduces the topic conceptually and provides a hands-on example. Topics other than the ones listed are also fair game. These are meant to be "gentle introduction" tutorials which assume beginner Python knowledge and beginner Bayesian optimization knowledge (see resources for more details on what is meant by "beginner").
The hackathon is open to proposals for real-world optimization tasks in chemistry and materials science. This will involve providing beginner-friendly background knowledge on the impact of the application, existing solutions, and the science behind it. This is particularly well-suited for those who would prefer to contribute in a non-coding context, as it allows domain experts to formulate high-impact research tasks from an optimization perspective. It will also involve providing rigorous details around the optimization problem, including search space (tunable parameters + constraints), objectives, experimental equipment, reagants, and standard operating procedures. These should be well-defined problems that can and should be tackled with Bayesian optimization, but have not yet been tackled successfully or adequately. If you do not have a background in Bayesian optimization, it is highly recommended that you watch the recording of the Accelerate '23 Gentle Introduction to Bayesian Optimization training workshop in preparation for projects in this category.
This category is for projects that don't fit into the special topics listed above, but generally fall within the topic of Bayesian optimization for the physical sciences. Projects in this context are welcome! If you're unsure about a project, feel free to reach out to [email protected].
As a teamleader, to initialize your project[(?)][faq]{:title="Can I participate in multiple projects?"}, please follow these steps:
- Use this link to create a new file in a fork of the hackathon repository named
project-<your-team-name>.md
. For example, if your team name is "Bayes Bandits", the file should be namedproject-bayes-bandits.md
. The team name can be whatever you'd like (e.g., project name, GitHub username, institution).
- Copy the template from below into the file and fill in the title, topic, team leads, and contributors sections. Topic can be one of
benchmark-task
,benchmark-dev
,tutorial
,real-world
, andgeneral
, per the topics listed above. - Submit a pull request to the hackathon repository with the title "Add project <your-team-name>" and if applicable, tag your team members in the pull request description using the
@
symbol followed by their GitHub username. For example,@sgbaird
. This can be updated later if needed. - Once the pull request is merged, your project will appear on the projects page
---
number: 1 # leave as-is, maintainers will adjust
title: Project 1 title
topic: <topic-name>
team_leads:
- Project lead 1 (Institution 1)
- Project lead 2 (Institution 2)
# Comment these lines by prepending the pound symbol (#) to each line to hide these elements
contributors:
- Contributor 1 (Institution 1)
- Contributor 2 (Institution 2)
# github: AC-BO-Hackathon/<your-repo-name>
# youtube_video: <your-video-id>
---
Project 1 description
References:
Here is an example of a filled-in project file called project-bayes-bandits.md
for the "Bayes Bandits" team for a submission to the general
topic. Please replace any colons (:
) with hyphens (-
) in the title, if applicable, and ensure that the filename ends with the Markdown (.md
) extension. Also, ensure that you include the first line with ---
(required for the webpage to build correctly). The references section is optional. Please include links in Markdown format where appropriate.
---
number: 1 # leave as-is, maintainers will adjust
title: Investigation of Bandit Optimization for Composite Materials Design
topic: general
team_leads:
- Jane Doe (University of Invention)
- John Smith (Institute of Discovery)
contributors:
- Larry Lab (University of Invention)
- David Data (University of Science)
- Rachel Research (Institute of Discovery)
# github: AC-BO-Hackathon/<your-repo-name>
# youtube_video: <your-video-id>
---
This project will investigate the application of bandit optimization to the design of composite materials. We will focus on the optimization of the mechanical properties of the composite materials, such as strength, stiffness, and toughness as a function of the fiber types and matrix materials. We will compare the performance of bandit optimization with the performance of Bayesian optimization using featurization tactics for this highly discrete space.
References:
1. Aleksandrs Slivkins (2019), ["Introduction to Multi-Armed Bandits"](http://dx.doi.org/10.1561/2200000068), Foundations and Trends in Machine Learning: Vol. 12: No. 1-2, pp 1-286.
2. Dimmery, D., Bakshy, E., & Sekhon, J. (2019). [Shrinkage Estimators in Online Experiments](https://doi.org/10.48550/ARXIV.1904.12918). arXiv.
The project templates are anticipated for release during mid-March. Once these are ready you, team leaders can follow the instructions below:
- Accept the GitHub Classroom invitation to a topic above (see also resources)
- Create a new team in the GitHub Classroom interface
- Have your team members click on the same GitHub Classroom invitation link that you used and join the team you created.
- Open a new pull request to modify your project file. Replace
<your-repo-name>
with the GitHub repository name that was created by GitHub Classroom for you using the corresponding project template link. For example, if your team name is "Bayes Bandits" and the template is called "benchmarking", the repository will be namedbenchmarking-bayes-bandits
, and thegithub
field should beAC-BO-Hackathon/benchmarking-bayes-bandits
. You will also need to uncomment the line. For example:
# github: AC-BO-Hackathon/<your-repo-name>
would be replaced with:
github: AC-BO-Hackathon/benchmarking-bayes-bandits
If the submission instructions from above are daunting, you are welcome to submit your project proposal by email to [email protected]. Please include "AC BO Hackathon Project Proposal" in the subject line. We will create the project file and corresponding pull request for you.
To ensure a dynamic and engaging submission process, we ask that all hackathon teams submit their final projects through social media (e.g., Twitter, LinkedIn, YouTube) and then link to this in their project file. By sharing your work with a broader audience, you’ll help to promote groundbreaking research in materials science and chemistry while inspiring others to contribute to the field.
Here are the guidelines for submitting your project:
-
Create a concise video presentation (2 minutes or less) summarizing your team’s project, highlighting its applications in materials science and chemistry, and showcasing your project outputs.
-
Post your video to YouTube (unlisted is fine) and submit a pull request to update your project file with the YouTube video ID (e.g.,
IVaWl2tL06c
forhttps://youtu.be/IVaWl2tL06c
). For example, you would replace the following two lines:
github: AC-BO-Hackathon/bayes-bandits
# youtube_video: <your-video-id>
with:
github: AC-BO-Hackathon/bayes-bandits
youtube_video: IVaWl2tL06c
If you don't want to post it to YouTube, you can also post it directly to LinkedIn or Twitter. In this case, please update the project description file to include a link to the post and create a new pull request. For example, if your description is:
This project will investigate the application of bandit optimization to the design of composite materials. We will focus on the optimization of the mechanical properties of the composite materials, such as strength, stiffness, and toughness as a function of the fiber types and matrix materials. We will compare the performance of bandit optimization with the performance of Bayesian optimization using featurization tactics for this highly discrete space.
- Aleksandrs Slivkins (2019), "Introduction to Multi-Armed Bandits", Foundations and Trends in Machine Learning: Vol. 12: No. 1-2, pp 1-286. http://dx.doi.org/10.1561/2200000068
- Dimmery, D., Bakshy, E., & Sekhon, J. (2019). Shrinkage Estimators in Online Experiments. arXiv. https://doi.org/10.48550/ARXIV.1904.12918
You could add a link before the references (replace <your_link_here>
with your actual link, without the angle brackets):
This project will investigate the application of bandit optimization to the design of composite materials. We will focus on the optimization of the mechanical properties of the composite materials, such as strength, stiffness, and toughness as a function of the fiber types and matrix materials. We will compare the performance of bandit optimization with the performance of Bayesian optimization using featurization tactics for this highly discrete space.
See also the [LinkedIn submission post](<your link here>).
- Aleksandrs Slivkins (2019), "Introduction to Multi-Armed Bandits", Foundations and Trends in Machine Learning: Vol. 12: No. 1-2, pp 1-286. http://dx.doi.org/10.1561/2200000068
- Dimmery, D., Bakshy, E., & Sekhon, J. (2019). Shrinkage Estimators in Online Experiments. arXiv. https://doi.org/10.48550/ARXIV.1904.12918
This pull request will be considered your final submission. Again, if you find this process daunting, you are welcome to instead send your link by email to [email protected]. Please include "AC BO Hackathon Final Submission" in the subject line. We will update the project file and create corresponding pull request for you.
[faq]: {{ site.baseurl }}{% link faq.md %}