All Projects → yunshengtian → AutoOED

yunshengtian / AutoOED

Licence: other
AutoOED: Automated Optimal Experimental Design Platform

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to AutoOED

open-box
Generalized and Efficient Blackbox Optimization System.
Stars: ✭ 64 (-26.44%)
Mutual labels:  multi-objective-optimization, bayesian-optimization
Multiobjective EGO algorithms
The standard and parallel multiobjective EGO algorithms
Stars: ✭ 22 (-74.71%)
Mutual labels:  multi-objective-optimization, bayesian-optimization
syne-tune
Large scale and asynchronous Hyperparameter Optimization at your fingertip.
Stars: ✭ 105 (+20.69%)
Mutual labels:  multi-objective-optimization, bayesian-optimization
Pysot
Surrogate Optimization Toolbox for Python
Stars: ✭ 136 (+56.32%)
Mutual labels:  asynchronous, bayesian-optimization
open-box
Generalized and Efficient Blackbox Optimization System [SIGKDD'21].
Stars: ✭ 174 (+100%)
Mutual labels:  multi-objective-optimization, bayesian-optimization
CamelsOptimizer
Yes, it's a camel case.
Stars: ✭ 17 (-80.46%)
Mutual labels:  bayesian-optimization
firetrap
This project is no longer maintained. Check out the fork (lib)unFTP instead.
Stars: ✭ 15 (-82.76%)
Mutual labels:  asynchronous
rBAS
Implementation of the (beetle antennae search) BAS algorithm and its mutations in R code
Stars: ✭ 25 (-71.26%)
Mutual labels:  multi-objective-optimization
MQTT.jl
An asynchronous MQTT client library for julia
Stars: ✭ 15 (-82.76%)
Mutual labels:  asynchronous
drone-cortexm
ARM® Cortex®-M platform crate for Drone, an Embedded Operating System.
Stars: ✭ 31 (-64.37%)
Mutual labels:  asynchronous
RepositoryHelpers
📦 Extensions for HttpClient and Custom Repository based on dapper
Stars: ✭ 22 (-74.71%)
Mutual labels:  asynchronous
SG MCMC
Implementation of Stochastic Gradient MCMC algorithms
Stars: ✭ 37 (-57.47%)
Mutual labels:  bayesian-optimization
asyncpg
Asynchronous PostgreSQL driver for Nim language
Stars: ✭ 61 (-29.89%)
Mutual labels:  asynchronous
SockNet
The easiest and fastest way to work with sockets in C#
Stars: ✭ 42 (-51.72%)
Mutual labels:  asynchronous
openmessaging.github.io
OpenMessaging homepage
Stars: ✭ 12 (-86.21%)
Mutual labels:  asynchronous
Pac-Man
Evolutionary Pac-Man bots using Grammatical Evolution and Multi-objective Optimization. Cool GUI included (Undergraduate Thesis)
Stars: ✭ 50 (-42.53%)
Mutual labels:  multi-objective-optimization
hyper-engine
Python library for Bayesian hyper-parameters optimization
Stars: ✭ 80 (-8.05%)
Mutual labels:  bayesian-optimization
bayex
Bayesian Optimization in JAX
Stars: ✭ 24 (-72.41%)
Mutual labels:  bayesian-optimization
memsocket
An asynchronous in-memory socket-like interface for Rust
Stars: ✭ 34 (-60.92%)
Mutual labels:  asynchronous
yona
Yona is a modern take on a dynamic general-purpose programming language with advanced functional programming, minimalistic ML-like syntax, strict evaluation, for GraalVM polyglot virtual machine (VM).
Stars: ✭ 113 (+29.89%)
Mutual labels:  asynchronous

Platform Python 3.7 License

AutoOED: Automated Optimal Experimental Design Platform

Paper | Website | Documentation | Contact

AutoOED is an optimal experimental design platform powered with automated machine learning to accelerate the discovery of optimal solutions. Our platform solves multi-objective optimization problems and automatically guides the design of experiment to be evaluated.

NOTE: The paper and the documentation are slightly outdated. The descriptions may differ from the latest version of the software. We will update them soon.

Overview

AutoOED is a powerful and easy-to-use tool written in Python for design parameter optimization with multiple objectives, which can be used for any kind of experiment settings (chemistry, material, physics, engineering, computer science…). AutoOED aims at improving the sample efficiency of optimization problems, i.e., using less number of samples to achieve the best performance, by applying state-of-the-art machine learning approaches, which is most powerful when the performance evaluation of your problem is expensive (for example, in terms of time or money).

One of the most important features of AutoOED is an intuitive graphical user interface (GUI), which is provided to visualize and guide the experiments for users with little or no experience with coding, machine learning, or optimization. Furthermore, a distributed system is integrated to enable parallelized experimental evaluations by multiple processes on a single computer.

Installation

AutoOED can be installed either directly from the links to the executable files, or from source code. AutoOED generally works across all Windows/MacOS/Linux operating systems. After installation, there are some extra steps to take if you want to link your own evaluation programs to AutoOED for fully automatic experimentation.

Executable files

Windows (Install using AutoOED-Setup.exe)

MacOS (Install using AutoOED.dmg)

Linux (Unzip and find the executable at AutoOED_{version}/AutoOED_{version})

Source code

Step 1: General (Required)

Install by conda with pip:

conda env create -f environment.yml
conda activate autooed
pip install -r requirements_extra.txt

Or install purely by pip:

pip install -r requirements.txt
pip install -r requirements_extra.txt

Note: If you cannot properly run the programs after installation, please check if the version of these packages match our specifications.

Step 2: Custom Evaluation Programs (Optional)

There is some more work to do if you want to link your own evaluation programs to AutoOED to achieve fully automated experimentation, please see our documentation for more details.

Getting Started

After installation, please run the following command to start AutoOED with the GUI.

python run_gui.py

For more detailed usage and information of AutoOED, please checkout our documentation.

Citation

If you find our work helpful to your research, please consider citing our paper.

@misc{tian2021autooed,
    title={AutoOED: Automated Optimal Experiment Design Platform},
    author={Yunsheng Tian and Mina Konaković Luković and Timothy Erps and Michael Foshey and Wojciech Matusik},
    year={2021},
    eprint={2104.05959},
    archivePrefix={arXiv},
    primaryClass={cs.AI}
}

Contributing

We highly welcome all kinds of contributions, including but not limited to bug fixes, new feature suggestions, more intuitive error messages, and so on.

Especially, the algorithmic part of our code repository is written in a clean and modular way, facilitating extensions and tailoring the code, serving as a testbed for machine learning researchers to easily develop and evaluate their own multi-objective Bayesian optimization algorithms. We are looking forward to supporting more powerful optimization algorithms on our platform.

Contact

If you experience any issues during installing or using the software, or if you want to contribute to AutoOED, please feel free to reach out to us either by creating issues on GitHub or sending emails to [email protected].

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].