Sign inSign up

kotarot/teradapj-dev

By kotarot

•Updated over 5 years ago

Image
1

318

kotarot/teradapj-dev repository overview

⁠teradapj-dev

CI Docker Build Docker Autobuild

Terada PJ の開発用リポジトリ。

⁠開発環境のセットアップ

python -m venv venv
source venv/bin/activate
pip install --upgrade pip
git clone -b teradapj-dev https://github.com/kotarot/pyqubo.git
git pull
pushd pyqubo
python setup.py install
popd
git clone -b master https://github.com/kotarot/sawatabi.git
pushd sawatabi
git pull
python setup.py install
popd
pip install -e .[dev,testing,notebook]

# 単体テストの実行(2並列&分岐網羅をチェックする)
py.test

# コーディング規約のチェック
flake8 demos

⁠venvの再作成

deactivate
rm -rf venv
python -m venv venv
source venv/bin/activate
pip install --upgrade pip
pushd pyqubo && git pull && python setup.py install && popd
pushd sawatabi && git pull && python setup.py install && popd
pip install -e .[dev,testing,notebook]
python -c 'import sawatabi'
python -c 'import demos'

# 単体テストの実行(2並列&分岐網羅をチェックする)
py.test

# コーディング規約のチェック
flake8 demos
⁠VSCodeの設定

⁠Docker

⁠Docker Hub
⁠Docker イメージ
⁠Docker Hub から latest を取ってくる場合
docker pull kotarot/teradapj-dev
⁠Dockerfile からビルドする場合
docker build -t teradapj-dev-local .
⁠コンテナの実行
# Docker Hub から取得したイメージを利用する場合
[host] docker run -d -p 8001:8000 kotarot/teradapj-dev:latest
# Dockerfile からビルドしたイメージを利用する場合
[host] docker run -d -p 8001:8000 teradapj-dev-local:latest

[browser] http://the_host:8001/

docker logでtokenとるのがめんどいときはインタラクティブであげておく

# Docker Hub から取得したイメージを利用する場合
[host] docker run -it -p 8001:8000 kotarot/teradapj-dev:latest /bin/bash
# Dockerfile からビルドしたイメージを利用する場合
[host] docker run -it -p 8001:8000 teradapj-dev-local:latest /bin/bash

[container] /usr/local/bin/jupyter notebook --port 8000 --ip=0.0.0.0 --allow-root
[browser] http://the_host:8001/

# コンテナを再開する
[host] docker start <CONTAINER ID>
[host] docker exec -it <CONTAINER ID> /bin/bash

コンテナ終了するときにコンテナを削除してもいいなら、docker run のオプションに --rm を追加する。
注意しないとJupyter notebookのファイルが消えるので基本つけないほうがいいかも。

停止したコンテナを一括で削除するコマンド: docker rm $(docker ps -q -a)

⁠実装アプリケーション

⁠Online Unit Clustering / Online Unit Covering
⁠入力データセット
⁠T-shape

Test_Datasets_T.gif

⁠Cities

Test_Datasets_Cities.gif

⁠Time-dependent

Test_Datasets_TimeDep.gif

Test_Datasets_TimeDep_All.png

⁠実行アニメーション
⁠a = 1.0, b = 1.0

Unit_Clustering_Cities_a1.0_b1.0_g1.0.gif

⁠a = 10.0, b = 1.0

Unit_Clustering_Cities_a10.0_b1.0_g1.0.gif

⁠a = 1.0, b = 10.0

Unit_Clustering_Cities_a1.0_b10.0_g1.0.gif

⁠Job-shop Scheduling

TODO

⁠TSPPD (Traveling Salesperson Problem with Pickup and Dropoff)

TODO

Tag summary

Content type

Image

Digest

Size

926.8 MB

Last updated

over 5 years ago

docker pull kotarot/teradapj-dev