Skip to content

Commit cd28be9

Browse files
committed
Initial Commit
1 parent 001b528 commit cd28be9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+4881
-38
lines changed

.gitignore

Lines changed: 34 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,41 @@
1+
**/.DS_Store
2+
**/.vscode
3+
**/.mp4
4+
**/.npy
5+
**/.swp
6+
7+
18
# Byte-compiled / optimized / DLL files
29
__pycache__/
310
*.py[cod]
411
*$py.class
5-
6-
# C extensions
12+
*.run
713
*.so
14+
*.pkl
15+
16+
17+
# files which are in tests
18+
tests/!archive/*
19+
tests/scratch*
20+
tests/!archive_tests/*
21+
tests/!experimental/*
22+
23+
pymoo/cache/
24+
pymoo/cache/*
25+
26+
27+
benchmark/runs/*
28+
29+
# any video or other output file
30+
*.mp4
31+
32+
# pycharm folder
33+
.idea/
34+
835

936
# Distribution / packaging
1037
.Python
38+
env/
1139
build/
1240
develop-eggs/
1341
dist/
@@ -20,12 +48,9 @@ parts/
2048
sdist/
2149
var/
2250
wheels/
23-
pip-wheel-metadata/
24-
share/python-wheels/
2551
*.egg-info/
2652
.installed.cfg
2753
*.egg
28-
MANIFEST
2954

3055
# PyInstaller
3156
# Usually these files are written by a python script from a template
@@ -40,16 +65,13 @@ pip-delete-this-directory.txt
4065
# Unit test / coverage reports
4166
htmlcov/
4267
.tox/
43-
.nox/
4468
.coverage
4569
.coverage.*
4670
.cache
4771
nosetests.xml
4872
coverage.xml
4973
*.cover
50-
*.py,cover
5174
.hypothesis/
52-
.pytest_cache/
5375

5476
# Translations
5577
*.mo
@@ -58,8 +80,6 @@ coverage.xml
5880
# Django stuff:
5981
*.log
6082
local_settings.py
61-
db.sqlite3
62-
db.sqlite3-journal
6383

6484
# Flask stuff:
6585
instance/
@@ -77,38 +97,22 @@ target/
7797
# Jupyter Notebook
7898
.ipynb_checkpoints
7999

80-
# IPython
81-
profile_default/
82-
ipython_config.py
83-
84100
# pyenv
85101
.python-version
86102

87-
# pipenv
88-
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
89-
# However, in case of collaboration, if having platform-specific dependencies or dependencies
90-
# having no cross-platform support, pipenv may install dependencies that don't work, or not
91-
# install all needed dependencies.
92-
#Pipfile.lock
93-
94-
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
95-
__pypackages__/
96-
97-
# Celery stuff
103+
# celery beat schedule file
98104
celerybeat-schedule
99-
celerybeat.pid
100105

101106
# SageMath parsed files
102107
*.sage.py
103108

104-
# Environments
109+
# dotenv
105110
.env
111+
112+
# virtualenv
106113
.venv
107-
env/
108114
venv/
109115
ENV/
110-
env.bak/
111-
venv.bak/
112116

113117
# Spyder project settings
114118
.spyderproject
@@ -122,8 +126,3 @@ venv.bak/
122126

123127
# mypy
124128
.mypy_cache/
125-
.dmypy.json
126-
dmypy.json
127-
128-
# Pyre type checker
129-
.pyre/

LICENSE

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -633,8 +633,8 @@ the "copyright" line and a pointer to where the full notice is found.
633633
Copyright (C) <year> <name of author>
634634

635635
This program is free software: you can redistribute it and/or modify
636-
it under the terms of the GNU Affero General Public License as published
637-
by the Free Software Foundation, either version 3 of the License, or
636+
it under the terms of the GNU Affero General Public License as published by
637+
the Free Software Foundation, either version 3 of the License, or
638638
(at your option) any later version.
639639

640640
This program is distributed in the hope that it will be useful,

README.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

README.rst

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
pysamoo - Surrogate-Assisted Multi-objective Optimization
2+
====================================================================
3+
4+
5+
|python| |license|
6+
7+
8+
.. |python| image:: https://img.shields.io/badge/python-3.6-blue.svg
9+
:alt: python 3.6
10+
11+
.. |license| image:: https://img.shields.io/badge/license-apache-orange.svg
12+
:alt: license apache
13+
:target: https://www.apache.org/licenses/LICENSE-2.0
14+
15+
The software documentation is available here: https://anyoptimization.com/projects/pysamoo/
16+
17+
Installation
18+
====================================================================
19+
20+
The official release is always available at PyPi:
21+
22+
.. code:: bash
23+
24+
pip install -U pysamoo
25+
26+
27+
28+
.. _Usage:
29+
30+
Usage
31+
********************************************************************************
32+
33+
We refer here to our documentation for all the details.
34+
However, for instance, executing NSGA2:
35+
36+
.. code:: python
37+
38+
from pymoo.optimize import minimize
39+
from pymoo.problems.multi.zdt import ZDT1
40+
from pymoo.visualization.scatter import Scatter
41+
from pysamoo.algorithms.ssansga2 import SSANSGA2
42+
43+
problem = ZDT1(n_var=10)
44+
45+
algorithm = SSANSGA2(n_initial_doe=50,
46+
n_infills=10,
47+
surr_pop_size=100,
48+
surr_n_gen=50)
49+
50+
res = minimize(
51+
problem,
52+
algorithm,
53+
('n_evals', 200),
54+
seed=1,
55+
verbose=True)
56+
57+
plot = Scatter()
58+
plot.add(problem.pareto_front(), plot_type="line", color="black", alpha=0.7)
59+
plot.add(res.F, facecolor="none", edgecolor="red")
60+
plot.show()
61+
62+
63+
64+
.. _Citation:
65+
66+
Citation
67+
********************************************************************************
68+
69+
If you use this framework, we kindly ask you to cite the following paper:
70+
71+
| `Julian Blank, & Kalyanmoy Deb. (2022). pysamoo: Surrogate-Assisted Multi-Objective Optimization in Python. <https://arxiv.org/abs/2204.05855>`_
72+
|
73+
| BibTex:
74+
75+
::
76+
77+
@misc{pysamoo,
78+
title={pysamoo: Surrogate-Assisted Multi-Objective Optimization in Python},
79+
author={Julian Blank and Kalyanmoy Deb},
80+
year={2022},
81+
eprint={2204.05855},
82+
archivePrefix={arXiv},
83+
primaryClass={cs.NE}
84+
}
85+
86+
.. _Contact:
87+
88+
Contact
89+
********************************************************************************
90+
91+
Feel free to contact me if you have any questions:
92+
93+
| `Julian Blank <http://julianblank.com>`_ (blankjul [at] msu.edu)
94+
| Michigan State University
95+
| Computational Optimization and Innovation Laboratory (COIN)
96+
| East Lansing, MI 48824, USA
97+

docs/Makefile

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Minimal makefile for Sphinx documentation
2+
#
3+
4+
# You can set these variables from the command line, and also
5+
# from the environment for the first two.
6+
SPHINXOPTS ?=
7+
SPHINXBUILD ?= sphinx-build
8+
SOURCEDIR = source
9+
BUILDDIR = build
10+
11+
# Put it first so that "make" without argument is like "make help".
12+
help:
13+
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14+
15+
.PHONY: help Makefile
16+
17+
# Catch-all target: route all unknown targets to Sphinx using the new
18+
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19+
%: Makefile
20+
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

docs/make.bat

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
@ECHO OFF
2+
3+
pushd %~dp0
4+
5+
REM Command file for Sphinx documentation
6+
7+
if "%SPHINXBUILD%" == "" (
8+
set SPHINXBUILD=sphinx-build
9+
)
10+
set SOURCEDIR=source
11+
set BUILDDIR=build
12+
13+
%SPHINXBUILD% >NUL 2>NUL
14+
if errorlevel 9009 (
15+
echo.
16+
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
17+
echo.installed, then set the SPHINXBUILD environment variable to point
18+
echo.to the full path of the 'sphinx-build' executable. Alternatively you
19+
echo.may add the Sphinx directory to PATH.
20+
echo.
21+
echo.If you don't have Sphinx installed, grab it from
22+
echo.https://www.sphinx-doc.org/
23+
exit /b 1
24+
)
25+
26+
if "%1" == "" goto help
27+
28+
%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
29+
goto end
30+
31+
:help
32+
%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
33+
34+
:end
35+
popd

docs/source/_img/alpha.svg

Lines changed: 1 addition & 0 deletions
Loading

docs/source/_img/beta.png

112 KB
Loading

docs/source/_img/beta.svg

Lines changed: 1 addition & 0 deletions
Loading

docs/source/_img/gpsaf.png

286 KB
Loading

0 commit comments

Comments
 (0)