physbo 2.1.0__tar.gz → 3.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {physbo-2.1.0/physbo.egg-info → physbo-3.2.0}/PKG-INFO +75 -30
- physbo-2.1.0/PKG-INFO → physbo-3.2.0/README.md +47 -35
- physbo-3.2.0/pyproject.toml +54 -0
- physbo-3.2.0/setup.cfg +4 -0
- physbo-3.2.0/src/physbo/__init__.py +34 -0
- physbo-3.2.0/src/physbo/_variable.py +429 -0
- physbo-3.2.0/src/physbo/blm/__init__.py +34 -0
- physbo-3.2.0/src/physbo/blm/_predictor.py +286 -0
- physbo-3.2.0/src/physbo/blm/basis/__init__.py +18 -0
- physbo-2.1.0/physbo/blm/basis/fourier.py → physbo-3.2.0/src/physbo/blm/basis/_fourier.py +6 -2
- {physbo-2.1.0/physbo/blm/lik/_src → physbo-3.2.0/src/physbo/blm/core}/__init__.py +3 -1
- physbo-2.1.0/physbo/blm/core/model.py → physbo-3.2.0/src/physbo/blm/core/_model.py +42 -7
- {physbo-2.1.0 → physbo-3.2.0/src}/physbo/blm/inf/__init__.py +2 -0
- {physbo-2.1.0 → physbo-3.2.0/src}/physbo/blm/inf/exact.py +14 -7
- physbo-3.2.0/src/physbo/blm/lik/__init__.py +33 -0
- physbo-2.1.0/physbo/blm/lik/_src/cov.py → physbo-3.2.0/src/physbo/blm/lik/_cov.py +1 -1
- physbo-2.1.0/physbo/blm/lik/gauss.py → physbo-3.2.0/src/physbo/blm/lik/_gauss.py +6 -5
- physbo-2.1.0/physbo/blm/lik/linear.py → physbo-3.2.0/src/physbo/blm/lik/_linear.py +1 -1
- {physbo-2.1.0/physbo/blm → physbo-3.2.0/src/physbo/blm/prior}/__init__.py +6 -8
- physbo-2.1.0/physbo/blm/prior/gauss.py → physbo-3.2.0/src/physbo/blm/prior/_gauss.py +8 -8
- physbo-3.2.0/src/physbo/gp/__init__.py +46 -0
- physbo-2.1.0/physbo/gp/predictor.py → physbo-3.2.0/src/physbo/gp/_predictor.py +43 -20
- {physbo-2.1.0/physbo/blm → physbo-3.2.0/src/physbo/gp}/core/__init__.py +5 -1
- physbo-2.1.0/physbo/gp/core/model.py → physbo-3.2.0/src/physbo/gp/core/_model.py +143 -20
- physbo-2.1.0/physbo/gp/core/prior.py → physbo-3.2.0/src/physbo/gp/core/_prior.py +5 -5
- {physbo-2.1.0 → physbo-3.2.0/src}/physbo/gp/core/learning.py +38 -15
- {physbo-2.1.0/physbo/gp → physbo-3.2.0/src/physbo/gp/cov}/__init__.py +11 -8
- physbo-2.1.0/physbo/gp/cov/gauss.py → physbo-3.2.0/src/physbo/gp/cov/_gauss.py +34 -5
- {physbo-2.1.0 → physbo-3.2.0/src}/physbo/gp/inf/__init__.py +2 -0
- {physbo-2.1.0 → physbo-3.2.0/src}/physbo/gp/inf/exact.py +7 -10
- physbo-3.2.0/src/physbo/gp/lik/__init__.py +18 -0
- physbo-2.1.0/physbo/gp/lik/gauss.py → physbo-3.2.0/src/physbo/gp/lik/_gauss.py +6 -6
- physbo-3.2.0/src/physbo/gp/mean/__init__.py +26 -0
- physbo-2.1.0/physbo/gp/mean/const.py → physbo-3.2.0/src/physbo/gp/mean/_const.py +1 -1
- physbo-2.1.0/physbo/gp/mean/zero.py → physbo-3.2.0/src/physbo/gp/mean/_zero.py +1 -1
- physbo-3.2.0/src/physbo/misc/__init__.py +43 -0
- physbo-3.2.0/src/physbo/misc/_centering.py +57 -0
- physbo-3.2.0/src/physbo/misc/_cholesky.py +59 -0
- physbo-2.1.0/physbo/misc/gauss_elim.py → physbo-3.2.0/src/physbo/misc/_gauss_elim.py +0 -1
- physbo-3.2.0/src/physbo/misc/_matrix.py +74 -0
- physbo-2.1.0/physbo/misc/set_config.py → physbo-3.2.0/src/physbo/misc/_set_config.py +27 -27
- physbo-3.2.0/src/physbo/misc/permutation_importance.py +85 -0
- {physbo-2.1.0/physbo → physbo-3.2.0/src/physbo/opt}/__init__.py +10 -9
- physbo-2.1.0/physbo/opt/adam.py → physbo-3.2.0/src/physbo/opt/_adam.py +1 -1
- {physbo-2.1.0 → physbo-3.2.0/src}/physbo/predictor.py +45 -8
- {physbo-2.1.0 → physbo-3.2.0/src}/physbo/search/__init__.py +17 -0
- physbo-3.2.0/src/physbo/search/discrete/__init__.py +29 -0
- physbo-2.1.0/physbo/search/discrete/results.py → physbo-3.2.0/src/physbo/search/discrete/_history.py +35 -4
- physbo-2.1.0/physbo/search/discrete/policy.py → physbo-3.2.0/src/physbo/search/discrete/_policy.py +204 -49
- physbo-3.2.0/src/physbo/search/discrete_multi/__init__.py +31 -0
- physbo-3.2.0/src/physbo/search/discrete_multi/_history.py +169 -0
- physbo-2.1.0/physbo/search/discrete_multi/policy.py → physbo-3.2.0/src/physbo/search/discrete_multi/_policy.py +229 -121
- {physbo-2.1.0/physbo/gp/core → physbo-3.2.0/src/physbo/search/discrete_unified}/__init__.py +3 -3
- physbo-2.1.0/physbo/search/discrete_multi/results.py → physbo-3.2.0/src/physbo/search/discrete_unified/_history.py +42 -1
- physbo-3.2.0/src/physbo/search/discrete_unified/_policy.py +707 -0
- physbo-3.2.0/src/physbo/search/optimize/__init__.py +0 -0
- physbo-3.2.0/src/physbo/search/optimize/odatse.py +192 -0
- physbo-3.2.0/src/physbo/search/optimize/random.py +57 -0
- physbo-3.2.0/src/physbo/search/pareto.py +363 -0
- physbo-3.2.0/src/physbo/search/range/__init__.py +29 -0
- physbo-3.2.0/src/physbo/search/range/_history.py +234 -0
- physbo-3.2.0/src/physbo/search/range/_policy.py +781 -0
- physbo-3.2.0/src/physbo/search/range_multi/__init__.py +29 -0
- physbo-3.2.0/src/physbo/search/range_multi/_history.py +190 -0
- physbo-3.2.0/src/physbo/search/range_multi/_policy.py +696 -0
- {physbo-2.1.0/physbo/search/discrete → physbo-3.2.0/src/physbo/search/range_unified}/__init__.py +3 -3
- physbo-3.2.0/src/physbo/search/range_unified/_history.py +190 -0
- physbo-3.2.0/src/physbo/search/range_unified/_policy.py +610 -0
- {physbo-2.1.0 → physbo-3.2.0/src}/physbo/search/score_multi.py +70 -12
- {physbo-2.1.0/physbo/blm/lik → physbo-3.2.0/src/physbo/search/unify}/__init__.py +4 -3
- physbo-3.2.0/src/physbo/search/unify/nds.py +159 -0
- physbo-3.2.0/src/physbo/search/unify/parego.py +141 -0
- physbo-3.2.0/src/physbo/search/utility.py +354 -0
- {physbo-2.1.0/physbo/search/discrete_multi → physbo-3.2.0/src/physbo/test_functions}/__init__.py +3 -3
- physbo-3.2.0/src/physbo/test_functions/base.py +229 -0
- physbo-3.2.0/src/physbo/test_functions/multi_objective.py +1542 -0
- physbo-3.2.0/src/physbo/test_functions/single_objective.py +601 -0
- physbo-2.1.0/README.md → physbo-3.2.0/src/physbo.egg-info/PKG-INFO +80 -22
- physbo-3.2.0/src/physbo.egg-info/SOURCES.txt +81 -0
- physbo-3.2.0/src/physbo.egg-info/requires.txt +24 -0
- physbo-2.1.0/physbo/blm/basis/__init__.py +0 -8
- physbo-2.1.0/physbo/blm/predictor.py +0 -243
- physbo-2.1.0/physbo/blm/prior/__init__.py +0 -8
- physbo-2.1.0/physbo/gp/cov/__init__.py +0 -8
- physbo-2.1.0/physbo/gp/cov/_src/__init__.py +0 -1
- physbo-2.1.0/physbo/gp/cov/_src/enhance_gauss.pyx +0 -86
- physbo-2.1.0/physbo/gp/lik/__init__.py +0 -8
- physbo-2.1.0/physbo/gp/mean/__init__.py +0 -9
- physbo-2.1.0/physbo/misc/__init__.py +0 -15
- physbo-2.1.0/physbo/misc/_src/__init__.py +0 -1
- physbo-2.1.0/physbo/misc/_src/cholupdate.pyx +0 -47
- physbo-2.1.0/physbo/misc/_src/diagAB.pyx +0 -44
- physbo-2.1.0/physbo/misc/_src/logsumexp.pyx +0 -39
- physbo-2.1.0/physbo/misc/_src/traceAB.pyx +0 -75
- physbo-2.1.0/physbo/misc/centering.py +0 -28
- physbo-2.1.0/physbo/opt/__init__.py +0 -8
- physbo-2.1.0/physbo/search/pareto.py +0 -206
- physbo-2.1.0/physbo/search/utility.py +0 -101
- physbo-2.1.0/physbo/variable.py +0 -222
- physbo-2.1.0/physbo.egg-info/SOURCES.txt +0 -67
- physbo-2.1.0/physbo.egg-info/not-zip-safe +0 -1
- physbo-2.1.0/physbo.egg-info/requires.txt +0 -2
- physbo-2.1.0/pyproject.toml +0 -3
- physbo-2.1.0/setup.cfg +0 -23
- physbo-2.1.0/setup.py +0 -53
- {physbo-2.1.0 → physbo-3.2.0/src}/physbo/search/score.py +0 -0
- {physbo-2.1.0 → physbo-3.2.0/src}/physbo.egg-info/dependency_links.txt +0 -0
- {physbo-2.1.0 → physbo-3.2.0/src}/physbo.egg-info/top_level.txt +0 -0
|
@@ -1,15 +1,35 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: physbo
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 3.2.0
|
|
4
4
|
Summary: optimization tool for PHYSics based on Bayesian Optimization
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
Author-email: PHYSBO developers <physbo-dev@issp.u-tokyo.ac.jp>
|
|
6
|
+
License-Expression: MPL-2.0
|
|
7
|
+
Project-URL: homepage, https://www.pasums.issp.u-tokyo.ac.jp/physbo/en
|
|
8
|
+
Project-URL: source, https://github.com/issp-center-dev/PHYSBO
|
|
9
|
+
Project-URL: documentation, https://issp-center-dev.github.io/PHYSBO/
|
|
10
|
+
Project-URL: releasenotes, https://github.com/issp-center-dev/PHYSBO/releases
|
|
11
|
+
Requires-Python: >=3.9
|
|
10
12
|
Description-Content-Type: text/markdown
|
|
11
|
-
Requires-Dist: numpy
|
|
13
|
+
Requires-Dist: numpy
|
|
14
|
+
Requires-Dist: odat-se>=3.2.0
|
|
12
15
|
Requires-Dist: scipy
|
|
16
|
+
Provides-Extra: odat-se
|
|
17
|
+
Requires-Dist: odat-se; extra == "odat-se"
|
|
18
|
+
Provides-Extra: docs
|
|
19
|
+
Requires-Dist: gitpython>=3.1.45; extra == "docs"
|
|
20
|
+
Requires-Dist: jupyter>=1.1.1; extra == "docs"
|
|
21
|
+
Requires-Dist: matplotlib>=3.9.4; extra == "docs"
|
|
22
|
+
Requires-Dist: nbsphinx>=0.9.7; extra == "docs"
|
|
23
|
+
Requires-Dist: sphinx>=7.4.7; extra == "docs"
|
|
24
|
+
Requires-Dist: sphinx-rtd-theme>=3.0.2; extra == "docs"
|
|
25
|
+
Provides-Extra: tutorials
|
|
26
|
+
Requires-Dist: jupyter>=1.1.1; extra == "tutorials"
|
|
27
|
+
Requires-Dist: matplotlib>=3.9.4; extra == "tutorials"
|
|
28
|
+
Requires-Dist: odat-se>=3.2.0; extra == "tutorials"
|
|
29
|
+
Requires-Dist: pandas>=2.3.3; extra == "tutorials"
|
|
30
|
+
Provides-Extra: tests
|
|
31
|
+
Requires-Dist: pytest>=8.4.2; extra == "tests"
|
|
32
|
+
Requires-Dist: pytest-mock>=3.15.1; extra == "tests"
|
|
13
33
|
|
|
14
34
|
# optimization tools for PHYsics based on Bayesian Optimization ( PHYSBO )
|
|
15
35
|
|
|
@@ -21,37 +41,39 @@ PHYSBO was developed based on [COMBO](https://github.com/tsudalab/combo) for aca
|
|
|
21
41
|
## Documentation
|
|
22
42
|
|
|
23
43
|
- Stable (master branch)
|
|
24
|
-
|
|
25
|
-
|
|
44
|
+
- [English](https://issp-center-dev.github.io/PHYSBO/manual/master/en/index.html)
|
|
45
|
+
- [日本語](https://issp-center-dev.github.io/PHYSBO/manual/master/ja/index.html)
|
|
26
46
|
- Latest (develop branch)
|
|
27
|
-
|
|
28
|
-
|
|
47
|
+
- [English](https://issp-center-dev.github.io/PHYSBO/manual/develop/en/index.html)
|
|
48
|
+
- [日本語](https://issp-center-dev.github.io/PHYSBO/manual/develop/ja/index.html)
|
|
29
49
|
|
|
30
50
|
## Dependencies
|
|
31
51
|
|
|
32
|
-
- Python >= 3.
|
|
33
|
-
|
|
34
|
-
- NumPy < 2.0.0
|
|
52
|
+
- Python >= 3.9
|
|
53
|
+
- NumPy
|
|
35
54
|
- SciPy
|
|
36
55
|
|
|
56
|
+
### Optional dependencies
|
|
57
|
+
|
|
58
|
+
- [ODAT-SE](https://github.com/issp-center-dev/ODAT-SE) (for continuous space optimization)
|
|
59
|
+
|
|
60
|
+
``` bash
|
|
61
|
+
python3 -m pip install odat-se
|
|
62
|
+
```
|
|
63
|
+
|
|
37
64
|
## Install
|
|
38
65
|
|
|
39
66
|
- From PyPI (recommended)
|
|
40
67
|
|
|
41
|
-
```bash
|
|
42
|
-
python3 -m pip install physbo
|
|
43
|
-
```
|
|
68
|
+
```bash
|
|
69
|
+
python3 -m pip install physbo
|
|
70
|
+
```
|
|
44
71
|
|
|
45
72
|
- From source (for developers)
|
|
46
|
-
1. Update pip (>= 19.0)
|
|
47
|
-
|
|
48
|
-
```bash
|
|
49
|
-
python3 -m pip install -U pip
|
|
50
|
-
```
|
|
51
73
|
|
|
52
74
|
1. Download or clone the github repository
|
|
53
75
|
|
|
54
|
-
```
|
|
76
|
+
```bash
|
|
55
77
|
git clone https://github.com/issp-center-dev/PHYSBO
|
|
56
78
|
```
|
|
57
79
|
|
|
@@ -64,8 +86,6 @@ python3 -m pip install physbo
|
|
|
64
86
|
python3 -m pip install ./PHYSBO
|
|
65
87
|
```
|
|
66
88
|
|
|
67
|
-
1. Note: Do not `import physbo` at the root directory of the repository because `import physbo` does not try to import the installed PHYSBO but one in the repository, which includes Cython codes not compiled.
|
|
68
|
-
|
|
69
89
|
## Uninstall
|
|
70
90
|
|
|
71
91
|
```bash
|
|
@@ -74,25 +94,50 @@ python3 -m pip uninstall physbo
|
|
|
74
94
|
|
|
75
95
|
## Usage
|
|
76
96
|
|
|
77
|
-
For an introductory tutorial please consult the documentation. ([English](https://issp-center-dev.github.io/PHYSBO/manual/master/en/notebook/tutorial_basic.html) / [日本語](https://issp-center-dev.github.io/PHYSBO/manual/develop/ja/install.html#id2))
|
|
97
|
+
For an introductory tutorial please consult the documentation. ([English](https://issp-center-dev.github.io/PHYSBO/manual/master/en/notebook/tutorial_basic.html) / [日本語](https://issp-center-dev.github.io/PHYSBO/manual/develop/ja/install.html#id2))
|
|
78
98
|
|
|
79
99
|
['examples/simple.py'](./examples/simple.py) is a simple example.
|
|
80
100
|
|
|
81
101
|
## Data repository
|
|
82
102
|
|
|
83
|
-
A tutorial and a dataset of a paper about PHYSBO can be found in [PHYSBO Gallery](
|
|
103
|
+
A tutorial and a dataset of a paper about PHYSBO can be found in [PHYSBO Gallery](https://isspns-gitlab.issp.u-tokyo.ac.jp/physbo-dev/physbo-gallery).
|
|
104
|
+
|
|
105
|
+
## For developers
|
|
106
|
+
|
|
107
|
+
[UV](https://docs.astral.sh/uv/) is recommended to make a virtual environment and install dependencies for development.
|
|
108
|
+
|
|
109
|
+
### Run tests
|
|
110
|
+
|
|
111
|
+
When using UV, the command `uv sync --extra tests` will install the dependencies to run tests like `pytest`.
|
|
112
|
+
Test files are in `tests/` directory, and use `pytest` to run tests.
|
|
113
|
+
|
|
114
|
+
``` bash
|
|
115
|
+
uv run pytest tests
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### Build documentation
|
|
119
|
+
|
|
120
|
+
When using UV, the command `uv sync --extra docs` will install the dependencies for building the documentation like `sphinx`.
|
|
121
|
+
|
|
122
|
+
The command
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
uv run bash docs/make_docs.sh
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
will build the documentation into `docs/built`.
|
|
84
129
|
|
|
85
130
|
## License
|
|
86
131
|
|
|
87
132
|
PHYSBO was developed based on [COMBO](https://github.com/tsudalab/COMBO) for academic use.
|
|
88
|
-
PHYSBO
|
|
133
|
+
PHYSBO is distributed under Mozilla Public License version 2.0 (MPL v2).
|
|
89
134
|
We hope that you cite the following reference when you publish the results using PHYSBO:
|
|
90
135
|
|
|
91
136
|
[“Bayesian optimization package: PHYSBO”, Yuichi Motoyama, Ryo Tamura, Kazuyoshi Yoshimi, Kei Terayama, Tsuyoshi Ueno, Koji Tsuda, Computer Physics Communications Volume 278, September 2022, 108405.](https://doi.org/10.1016/j.cpc.2022.108405)
|
|
92
137
|
|
|
93
138
|
Bibtex
|
|
94
139
|
|
|
95
|
-
```
|
|
140
|
+
```bibtex
|
|
96
141
|
@misc{@article{MOTOYAMA2022108405,
|
|
97
142
|
title = {Bayesian optimization package: PHYSBO},
|
|
98
143
|
journal = {Computer Physics Communications},
|
|
@@ -1,16 +1,3 @@
|
|
|
1
|
-
Metadata-Version: 2.2
|
|
2
|
-
Name: physbo
|
|
3
|
-
Version: 2.1.0
|
|
4
|
-
Summary: optimization tool for PHYSics based on Bayesian Optimization
|
|
5
|
-
Home-page: https://github.com/issp-center-dev/PHYSBO
|
|
6
|
-
Author: PHYSBO developers
|
|
7
|
-
Author-email: physbo-dev@issp.u-tokyo.ac.jp
|
|
8
|
-
License: MPLv2
|
|
9
|
-
Requires-Python: >=3.6
|
|
10
|
-
Description-Content-Type: text/markdown
|
|
11
|
-
Requires-Dist: numpy<2.0
|
|
12
|
-
Requires-Dist: scipy
|
|
13
|
-
|
|
14
1
|
# optimization tools for PHYsics based on Bayesian Optimization ( PHYSBO )
|
|
15
2
|
|
|
16
3
|
Bayesian optimization has been proven as an effective tool in accelerating scientific discovery.
|
|
@@ -21,37 +8,39 @@ PHYSBO was developed based on [COMBO](https://github.com/tsudalab/combo) for aca
|
|
|
21
8
|
## Documentation
|
|
22
9
|
|
|
23
10
|
- Stable (master branch)
|
|
24
|
-
|
|
25
|
-
|
|
11
|
+
- [English](https://issp-center-dev.github.io/PHYSBO/manual/master/en/index.html)
|
|
12
|
+
- [日本語](https://issp-center-dev.github.io/PHYSBO/manual/master/ja/index.html)
|
|
26
13
|
- Latest (develop branch)
|
|
27
|
-
|
|
28
|
-
|
|
14
|
+
- [English](https://issp-center-dev.github.io/PHYSBO/manual/develop/en/index.html)
|
|
15
|
+
- [日本語](https://issp-center-dev.github.io/PHYSBO/manual/develop/ja/index.html)
|
|
29
16
|
|
|
30
17
|
## Dependencies
|
|
31
18
|
|
|
32
|
-
- Python >= 3.
|
|
33
|
-
|
|
34
|
-
- NumPy < 2.0.0
|
|
19
|
+
- Python >= 3.9
|
|
20
|
+
- NumPy
|
|
35
21
|
- SciPy
|
|
36
22
|
|
|
23
|
+
### Optional dependencies
|
|
24
|
+
|
|
25
|
+
- [ODAT-SE](https://github.com/issp-center-dev/ODAT-SE) (for continuous space optimization)
|
|
26
|
+
|
|
27
|
+
``` bash
|
|
28
|
+
python3 -m pip install odat-se
|
|
29
|
+
```
|
|
30
|
+
|
|
37
31
|
## Install
|
|
38
32
|
|
|
39
33
|
- From PyPI (recommended)
|
|
40
34
|
|
|
41
|
-
```bash
|
|
42
|
-
python3 -m pip install physbo
|
|
43
|
-
```
|
|
35
|
+
```bash
|
|
36
|
+
python3 -m pip install physbo
|
|
37
|
+
```
|
|
44
38
|
|
|
45
39
|
- From source (for developers)
|
|
46
|
-
1. Update pip (>= 19.0)
|
|
47
|
-
|
|
48
|
-
```bash
|
|
49
|
-
python3 -m pip install -U pip
|
|
50
|
-
```
|
|
51
40
|
|
|
52
41
|
1. Download or clone the github repository
|
|
53
42
|
|
|
54
|
-
```
|
|
43
|
+
```bash
|
|
55
44
|
git clone https://github.com/issp-center-dev/PHYSBO
|
|
56
45
|
```
|
|
57
46
|
|
|
@@ -64,8 +53,6 @@ python3 -m pip install physbo
|
|
|
64
53
|
python3 -m pip install ./PHYSBO
|
|
65
54
|
```
|
|
66
55
|
|
|
67
|
-
1. Note: Do not `import physbo` at the root directory of the repository because `import physbo` does not try to import the installed PHYSBO but one in the repository, which includes Cython codes not compiled.
|
|
68
|
-
|
|
69
56
|
## Uninstall
|
|
70
57
|
|
|
71
58
|
```bash
|
|
@@ -74,25 +61,50 @@ python3 -m pip uninstall physbo
|
|
|
74
61
|
|
|
75
62
|
## Usage
|
|
76
63
|
|
|
77
|
-
For an introductory tutorial please consult the documentation. ([English](https://issp-center-dev.github.io/PHYSBO/manual/master/en/notebook/tutorial_basic.html) / [日本語](https://issp-center-dev.github.io/PHYSBO/manual/develop/ja/install.html#id2))
|
|
64
|
+
For an introductory tutorial please consult the documentation. ([English](https://issp-center-dev.github.io/PHYSBO/manual/master/en/notebook/tutorial_basic.html) / [日本語](https://issp-center-dev.github.io/PHYSBO/manual/develop/ja/install.html#id2))
|
|
78
65
|
|
|
79
66
|
['examples/simple.py'](./examples/simple.py) is a simple example.
|
|
80
67
|
|
|
81
68
|
## Data repository
|
|
82
69
|
|
|
83
|
-
A tutorial and a dataset of a paper about PHYSBO can be found in [PHYSBO Gallery](
|
|
70
|
+
A tutorial and a dataset of a paper about PHYSBO can be found in [PHYSBO Gallery](https://isspns-gitlab.issp.u-tokyo.ac.jp/physbo-dev/physbo-gallery).
|
|
71
|
+
|
|
72
|
+
## For developers
|
|
73
|
+
|
|
74
|
+
[UV](https://docs.astral.sh/uv/) is recommended to make a virtual environment and install dependencies for development.
|
|
75
|
+
|
|
76
|
+
### Run tests
|
|
77
|
+
|
|
78
|
+
When using UV, the command `uv sync --extra tests` will install the dependencies to run tests like `pytest`.
|
|
79
|
+
Test files are in `tests/` directory, and use `pytest` to run tests.
|
|
80
|
+
|
|
81
|
+
``` bash
|
|
82
|
+
uv run pytest tests
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Build documentation
|
|
86
|
+
|
|
87
|
+
When using UV, the command `uv sync --extra docs` will install the dependencies for building the documentation like `sphinx`.
|
|
88
|
+
|
|
89
|
+
The command
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
uv run bash docs/make_docs.sh
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
will build the documentation into `docs/built`.
|
|
84
96
|
|
|
85
97
|
## License
|
|
86
98
|
|
|
87
99
|
PHYSBO was developed based on [COMBO](https://github.com/tsudalab/COMBO) for academic use.
|
|
88
|
-
PHYSBO
|
|
100
|
+
PHYSBO is distributed under Mozilla Public License version 2.0 (MPL v2).
|
|
89
101
|
We hope that you cite the following reference when you publish the results using PHYSBO:
|
|
90
102
|
|
|
91
103
|
[“Bayesian optimization package: PHYSBO”, Yuichi Motoyama, Ryo Tamura, Kazuyoshi Yoshimi, Kei Terayama, Tsuyoshi Ueno, Koji Tsuda, Computer Physics Communications Volume 278, September 2022, 108405.](https://doi.org/10.1016/j.cpc.2022.108405)
|
|
92
104
|
|
|
93
105
|
Bibtex
|
|
94
106
|
|
|
95
|
-
```
|
|
107
|
+
```bibtex
|
|
96
108
|
@misc{@article{MOTOYAMA2022108405,
|
|
97
109
|
title = {Bayesian optimization package: PHYSBO},
|
|
98
110
|
journal = {Computer Physics Communications},
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "physbo"
|
|
7
|
+
version = "3.2.0"
|
|
8
|
+
description = "optimization tool for PHYSics based on Bayesian Optimization"
|
|
9
|
+
readme = { file = "README.md", content-type = "text/markdown" }
|
|
10
|
+
license = "MPL-2.0"
|
|
11
|
+
authors = [ { name = "PHYSBO developers", email = "physbo-dev@issp.u-tokyo.ac.jp" } ]
|
|
12
|
+
|
|
13
|
+
requires-python = ">=3.9"
|
|
14
|
+
dependencies = [
|
|
15
|
+
"numpy",
|
|
16
|
+
"odat-se>=3.2.0",
|
|
17
|
+
"scipy",
|
|
18
|
+
]
|
|
19
|
+
|
|
20
|
+
[project.optional-dependencies]
|
|
21
|
+
odat-se = [ "odat-se" ]
|
|
22
|
+
docs = [
|
|
23
|
+
"gitpython>=3.1.45",
|
|
24
|
+
"jupyter>=1.1.1",
|
|
25
|
+
"matplotlib>=3.9.4",
|
|
26
|
+
"nbsphinx>=0.9.7",
|
|
27
|
+
"sphinx>=7.4.7",
|
|
28
|
+
"sphinx-rtd-theme>=3.0.2",
|
|
29
|
+
]
|
|
30
|
+
tutorials = [
|
|
31
|
+
"jupyter>=1.1.1",
|
|
32
|
+
"matplotlib>=3.9.4",
|
|
33
|
+
"odat-se>=3.2.0",
|
|
34
|
+
"pandas>=2.3.3",
|
|
35
|
+
]
|
|
36
|
+
tests = [
|
|
37
|
+
"pytest>=8.4.2",
|
|
38
|
+
"pytest-mock>=3.15.1",
|
|
39
|
+
]
|
|
40
|
+
|
|
41
|
+
[project.urls]
|
|
42
|
+
homepage = "https://www.pasums.issp.u-tokyo.ac.jp/physbo/en"
|
|
43
|
+
source = "https://github.com/issp-center-dev/PHYSBO"
|
|
44
|
+
documentation = "https://issp-center-dev.github.io/PHYSBO/"
|
|
45
|
+
releasenotes = "https://github.com/issp-center-dev/PHYSBO/releases"
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
[tool.setuptools.packages.find]
|
|
49
|
+
where = ["src"]
|
|
50
|
+
|
|
51
|
+
[tool.ruff]
|
|
52
|
+
|
|
53
|
+
[tool.ruff.lint]
|
|
54
|
+
ignore = ["E741"]
|
physbo-3.2.0/setup.cfg
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# SPDX-License-Identifier: MPL-2.0
|
|
2
|
+
# Copyright (C) 2020- The University of Tokyo
|
|
3
|
+
#
|
|
4
|
+
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
5
|
+
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
6
|
+
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
7
|
+
|
|
8
|
+
from . import gp
|
|
9
|
+
from . import opt
|
|
10
|
+
from . import blm
|
|
11
|
+
from . import misc
|
|
12
|
+
from . import search
|
|
13
|
+
from . import predictor
|
|
14
|
+
from . import test_functions
|
|
15
|
+
from ._variable import Variable
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def base_predictor(*args, **kwargs):
|
|
19
|
+
":meta private:"
|
|
20
|
+
misc.deprecated_warning(old="physbo.base_predictor", new="physbo.predictor.BasePredictor")
|
|
21
|
+
return predictor.BasePredictor(*args, **kwargs)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
def variable(*args, **kwargs):
|
|
25
|
+
":meta private:"
|
|
26
|
+
misc.deprecated_warning(old="physbo.variable", new="physbo.Variable")
|
|
27
|
+
return Variable(*args, **kwargs)
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
__version__ = "3.2.0"
|
|
31
|
+
|
|
32
|
+
# __all__ is used to specify the public API of the package
|
|
33
|
+
# and is used by sphinx to generate the API documentation
|
|
34
|
+
__all__ = ["gp", "opt", "blm", "misc", "search", "predictor", "Variable", "test_functions"]
|