Permalink
Please sign in to comment.
Browse files
Update for official release
Completed documentation. Fixed a few bugs with file writing formats with ‘txt’ in particular
- Loading branch information...
Showing
with
322 additions
and 125 deletions.
- +1 −1 README.rst
- +0 −8 doc/source/contributing.rst
- +0 −6 doc/source/examples.rst
- BIN doc/source/images/M-LOOP_logo.pdf
- BIN doc/source/images/M-LOOP_logo.png
- +0 −5 doc/source/options.rst
- +0 −6 doc/source/visualizations.rst
- +3 −3 {doc → docs}/Makefile
- BIN {doc/source/images → docs/_static}/M-LOOP_diagram.png
- BIN {doc/source/images → docs/_static}/M-LOOP_logo.ico
- BIN docs/_static/M-LOOP_logo.png
- BIN docs/_static/M-LOOP_visualizations.png
- BIN {doc/source/images → docs/_static}/M-LOOPandBEC.png
- 0 {doc/source → docs}/api/controllers.rst
- 0 {doc/source → docs}/api/index.rst
- 0 {doc/source → docs}/api/interfaces.rst
- 0 {doc/source → docs}/api/launchers.rst
- 0 {doc/source → docs}/api/learners.rst
- 0 {doc/source → docs}/api/mloop.rst
- 0 {doc/source → docs}/api/t_esting.rst
- 0 {doc/source → docs}/api/utilities.rst
- 0 {doc/source → docs}/api/visualizations.rst
- +22 −9 {doc/source → docs}/conf.py
- +37 −0 docs/contributing.rst
- 0 {doc/source → docs}/data.rst
- +102 −0 docs/examples.rst
- +3 −4 {doc/source → docs}/index.rst
- +2 −2 {doc/source → docs}/install.rst
- 0 {doc/source → docs}/interfaces.rst
- +3 −3 {doc → docs}/make.bat
- +4 −4 {doc/source → docs}/tutorial.rst
- +47 −0 docs/visualizations.rst
- +0 −10 examples/complete_controller_config.txt
- +19 −0 examples/controller_config.txt
- +3 −2 examples/{complete_extras_config.txt → extras_config.txt}
- +7 −0 examples/file_interface_config.txt
- +2 −2 examples/{complete_gaussian_process_config.txt → gaussian_process_complete_config.txt}
- +2 −2 examples/{simple_gaussian_process_config.txt → gaussian_process_simple_config.txt}
- 0 examples/{complete_logging_config.txt → logging_config.txt}
- +2 −2 examples/{complete_nelder_mead_config.txt → nelder_mead_complete_config.txt}
- +2 −2 examples/{simple_nelder_mead_config.txt → nelder_mead_simple_config.txt}
- +2 −2 examples/{complete_random_config.txt → random_complete_config.txt}
- +2 −2 examples/{simple_random_config.txt → random_simple_config.txt}
- +1 −1 mloop/__init__.py
- +20 −13 mloop/controllers.py
- +8 −10 mloop/learners.py
- +3 −0 mloop/utilities.py
- +6 −6 mloop/visualizations.py
- +1 −1 setup.py
- +18 −19 tests/test_examples.py
| @@ -1,8 +0,0 @@ | |||
| -.. _sec-contributing: | |||
| - | |||
| -Contributing | |||
| -============ | |||
| - | |||
| - | |||
| - | |||
| - | |||
| @@ -1,6 +0,0 @@ | |||
| -.. _sec-examples: | |||
| - | |||
| -Examples | |||
| -======== | |||
| - | |||
| -Blah | |||
Binary file not shown.
Deleted file not rendered
| @@ -1,5 +0,0 @@ | |||
| -.. _sec-options: | |||
| - | |||
| -Options | |||
| -------- | |||
| -I like turtles 3 | |||
| @@ -1,6 +0,0 @@ | |||
| -.. _sec-visualizations: | |||
| - | |||
| -Visualizations | |||
| -============== | |||
| - | |||
| -Blah | |||
File renamed without changes
File renamed without changes.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
File renamed without changes
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
| @@ -0,0 +1,37 @@ | |||
| +.. _sec-contributing: | |||
| + | |||
| +Contributing | |||
| +============ | |||
| + | |||
| +If you use M-LOOP please consider contributing to the project. There are many quick and easy ways to help out. | |||
| + | |||
| +- If you use M-LOOP be sure to cite paper where it first used: `'Fast machine-learning online optimization of ultra-cold-atom experiments', Sci Rep 6, 25890 (2016) <http://www.nature.com/srep/>`_. | |||
| +- Star and watch the `M-LOOP github <https://github.com/michaelhush/M-LOOP/watchers>`_. | |||
| +- Make a suggestion on what features you would like added, or report an issue, on the `github <https://github.com/michaelhush/M-LOOP/watchers>`_ or by `email <mailto:MichaelRHush@gmail.com>`_. | |||
| +- Contribute your own code to the `M-LOOP github <https://github.com/michaelhush/M-LOOP/watchers>`_, this could be the interface you designed, more options or a completely new solver. | |||
| + | |||
| +Finally spread the word! Let others know the success you have had with M-LOOP and recommend they try it too. | |||
| + | |||
| +Contributors | |||
| +------------ | |||
| + | |||
| +M-LOOP is written and maintained by `Michael R Hush <http://www.michaelhush.com>`_ <MichaelRHush@gmail.com> | |||
| + | |||
| +Other contributors, listed alphabetically, are: | |||
| + | |||
| +* John W. Bastian - design, first demonstration | |||
| +* Patrick J. Everitt - testing, design, first demonstration | |||
| +* Kyle S. Hardman - design, first demonstration | |||
| +* Anton van den Hengel - design, first demonstration | |||
| +* Joe J. Hope - design, first demonstration | |||
| +* Carlos C. N. Kuhn - first demonstration | |||
| +* Andre N. Luiten - first demonstration | |||
| +* Gordon D. McDonald - first demonstration | |||
| +* Manju Perumbil - first demonstration | |||
| +* Ian R. Petersen - first demonstration | |||
| +* Ciaron D. Quinlivan - first demonstration | |||
| +* Alex Ratcliff - testing | |||
| +* Nick P. Robins - first demonstration | |||
| +* Mahasen A. Sooriyabandara - first demonstration | |||
| +* Richard Taylor - testing | |||
| +* Paul B. Wigley - testing, design, first demonstration | |||
File renamed without changes.
| @@ -0,0 +1,102 @@ | |||
| +.. _sec-examples: | |||
| + | |||
| +Examples | |||
| +======== | |||
| + | |||
| +M-LOOP includes a series of example configuration files for each of the controllers and interfaces. The examples can be found in examples folder. For some controllers there are two files, ones ending with *_basic_config* which includes the standard configuration options and *_complete_config* which include a comprehensive list of all the configuration options available. | |||
| + | |||
| +The options available are also comprehensively documented in the :ref:`sec-api` as keywords for each of the classes. However, the quickest and easiest way to learn what options are available, if you are not familiar with python, is to just look at the provided examples. | |||
| + | |||
| +Each of the example files is used when running tests of M-LOOP. So please copy and modify them elsewhere if you use them as a starting point for your configuration file. | |||
| + | |||
| +Interfaces | |||
| +---------- | |||
| + | |||
| +There is currently one interface supported: 'file'. You can specify which interface you want with the option:: | |||
| + | |||
| + interface_type = [name] | |||
| + | |||
| +The default will be 'file'. The specific options for each of the interfaces are described below. | |||
| + | |||
| +File Interface | |||
| +~~~~~~~~~~~~~~ | |||
| + | |||
| +You can change the names of the files used for the file interface and their type. The file interface options are described in *file_interface_config.txt*. | |||
| + | |||
| +.. include:: ../examples/file_interface_config.txt | |||
| + :literal: | |||
| + | |||
| +Controllers | |||
| +----------- | |||
| + | |||
| +There are currently three controller types supported: 'gaussian_process', 'random' and 'nelder_mead'. The default is 'gaussian_process'. You can set which interface you want to use with the option:: | |||
| + | |||
| + controller_type = [name] | |||
| + | |||
| +Each of the controllers and their specific options are described below. There is also a set of common options shared by all controllers which is described in *controller_options.txt*. The common options include the parameter settings and the halting conditions. | |||
| + | |||
| +.. include:: ../examples/controller_config.txt | |||
| + :literal: | |||
| + | |||
| +Gaussian Process | |||
| +~~~~~~~~~~~~~~~~ | |||
| + | |||
| +The Gaussian-process controller is the default controller and is the currently the most sophisticated machine learner algorithm. It uses a `Link Gaussian process <http://scikit-learn.org/dev/modules/gaussian_process.html>`_ to develop a model for how the parameters relate to the measured cost, effectively creating a model for how the experiment operates. This model is then used when picking new points to test. | |||
| + | |||
| +There are two example files for the Gaussian-process controller: *gaussian_process_simple_config.txt* which contains the basic options. | |||
| + | |||
| +.. include:: ../examples/gaussian_process_simple_config.txt | |||
| + :literal: | |||
| + | |||
| +*gaussian_process_complete_config.txt* which contains a comprehensive list of options. | |||
| + | |||
| +.. include:: ../examples/gaussian_process_complete_config.txt | |||
| + :literal: | |||
| + | |||
| +Nelder Mead | |||
| +~~~~~~~~~~~ | |||
| + | |||
| +The Nelder Mead controller implements the `Link Nelder-Mead method <https://en.wikipedia.org/wiki/Nelder%E2%80%93Mead_method>`_ for optimization. You can control the starting point and size of the initial simplex of the method with the configuration file. | |||
| + | |||
| +There are two example files for the Nelder-Mead controller: *nelder_mead_simple_config.txt* which contains the basic options. | |||
| + | |||
| +.. include:: ../examples/nelder_mead_simple_config.txt | |||
| + :literal: | |||
| + | |||
| +*nelder_mead_complete_config.txt* which contains a comprehensive list of options. | |||
| + | |||
| +.. include:: ../examples/nelder_mead_complete_config.txt | |||
| + :literal: | |||
| + | |||
| +Random | |||
| +~~~~~~ | |||
| + | |||
| +The random optimization algorithm picks parameters randomly from a uniform distribution from within the parameter bounds or trust region. | |||
| + | |||
| +There are two example files for the random controller: *random_simple_config.txt* which contains the basic options. | |||
| + | |||
| +.. include:: ../examples/random_simple_config.txt | |||
| + :literal: | |||
| + | |||
| +*random_complete_config.txt* which contains a comprehensive list of options. | |||
| + | |||
| +.. include:: ../examples/random_complete_config.txt | |||
| + :literal: | |||
| + | |||
| +Logging | |||
| +------- | |||
| + | |||
| +You can control the filename of the logs and also the level which is reported to the file and the console. For more information see `Link logging levels <https://docs.python.org/3.6/library/logging.html#levels>`_. The logging options are described in *logging_config.txt*. | |||
| + | |||
| +.. include:: ../examples/logging_config.txt | |||
| + :literal: | |||
| + | |||
| +Extras | |||
| +------ | |||
| + | |||
| +Extras refers to options related to post processing your data once the optimization is complete. Currently the only extra option is for visualizations. The extra options are described in *extras_config.txt*. | |||
| + | |||
| +.. include:: ../examples/extras_config.txt | |||
| + :literal: | |||
| + | |||
| + | |||
File renamed without changes.
Oops, something went wrong.
0 comments on commit
40f84ae