GithubHelp home page GithubHelp logo

dac's Introduction

DAC

Code/Supplementary for the ECAI2020 paper
Dynamic Algorithm Configuration:
Foundation of a New Meta-Algorithmic Framework

If you used the presented benchmarks or framework in one of your research projects, please cite us:

@inproceedings{biedenkapp-ecai20,
  author    = {A. Biedenkapp and H. F. Bozkurt and T. Eimer and F. Hutter and M. Lindauer},
  title     = {Dynamic Algorithm Configuration: Foundation of a New Meta-Algorithmic Framework},
  booktitle = {Proceedings of the Twenty-fourth European Conference on Artificial Intelligence ({ECAI}'20)},
  year = {2020},
  month     = jun,
}

Installation using Anaconda

  1. conda create -n dac python=3.7
  2. conda activate dac
  3. cat requirements.txt | xargs -L 1 -n 1 pip install
  4. python setup.py install
  5. (optional) conda install jupyter

Example calls

  • Train 0.1-greedy tabular Q-learning on 1D-sigmoids with trinary actions for 104 episodes:
    python dac/train/train_other.py --seed 0 -r 1 -n 10000 --epsilon_decay const -e 0.1 -l 1. --env 1D3M --out-dir 1D-trinary-action-Sigmoid
  • Train DDQN on 1D-sigmoids with trinary actions for 105/104 steps/episodes:
    python dac/train/train_chainer_agent_on_toy.py --eval-n-runs 10 --eval-interval 10 --checkpoint_frequency 1000 --outdir 1D-trinary-action-Sigmoid/DQN --seed 0 --scenario 1D3M --steps 100000
  • Run PS-SMAC on 1D-sigmoids with trinary actions for 104 episodes:
    1. Find well performing parameter sequence:
      python dac/train/train_other.py --seed 0 -r 1 -n 10000 --epsilon_decay const -e 0.1 -l 1. --env 1D3M --out-dir 1D-trinary-action-Sigmoid --bo
    2. Validate the found sequence:
      python dac/train/train_other.py --seed 0 -r 1 -n 10000 --epsilon_decay const -e 0.1 -l 1. --env 1D3M --out-dir 1D-trinary-action-Sigmoid --bo --validate-bo 1D-trinary-action-Sigmoid/smac3*/run*

We provide a jupyter notebook with which you can inspect your own runs or the example results provided in example-results-1D-trinary-action-Sigmoid

License

This repository is licensed under the Apache License 2.0

Repository Structure

  • cmds:
    Contains many more commands to run sigmoid experiments from the paper
  • dac
    • envs:
      Contains all instance features and code for the presented white-box benchmarks
    • train:
      Contains code to train all the agents presented in the paper
  • example-results-1D-trinary-action-Sigmoid
    • DQN:
      Result of the above example DQN call
    • smac3-output:
      Results of the call of PS-SMAC
    • tabular:
      Result of the above example tabular call
  • Appendix.pdf
    The online appendix of the paper.
  • example_plots.ipynb
    Jupyter-Notebook to plot the example results

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.