diploma-thesis

Diploma thesis

https://github.com/yura-hb/diploma-thesis

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.4%) to scientific vocabulary

Keywords

drl graph jssp tardiness
Last synced: 6 months ago · JSON representation ·

Repository

Diploma thesis

Basic Info
  • Host: GitHub
  • Owner: yura-hb
  • License: other
  • Language: Jupyter Notebook
  • Default Branch: main
  • Homepage:
  • Size: 31.8 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 3
  • Releases: 0
Topics
drl graph jssp tardiness
Created about 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme Funding License Citation

README.md

The source code of the "Graph neural networks and deep reinforcement learning in job-shop scheduling"

Edit: Organised the configuration files for better reproducibility of results. Added only configurations from the final steps of the experiments!

To perform any of the experiments you must define the configuration file following examples in configuration/experiments/**/emperiment.yml files. Then to execute the experiment just call cli.py, i.e.

python cli.py --configuration PATH_TO_EXPERIMENT_FILE

The results of the tournament runs are stored in the pickled version of the class from environment/statistics.py. To load the file use the load method of Statistics class.

``` from environment.statistics import Statistics

statistics = Statistics.load(PATHTOPICKLED_FILE) ```

The requirements of the work are present in requirements.txt.

Trained models and experiment results are available here. Additionally, in evaluation folder you can find the results of the tournaments of the trained models.

If you want to launch any of the experiments from the evaluation archive, then you must follow the next procedure

  1. Copy the configuration folder to the 'diploma_thesis/configuration/experiments/jsp' folder
  2. Update reference paths in either 'experiment.yml' or 'experiment/0.yml' files from the copied folder. For instance, in the following yml slice, the path ''configuration/experiments/jsp/BEST/experiments/1/mrmachine.yml' must be updated to 'configuration/experiments/jsp/YOURFOLDER/experiments/1/mr_machine.yml'

yml dqn_2: &dqn_2 base_path: 'configuration/experiments/jsp/BEST/experiments/1/mr_machine.yml' template: '../../../../../../mods/machine/model/marl_dqn/baseline' mod_dirs: - 'configuration/mods/machine/mods' mods: - *default_mods

Owner

  • Name: Hayeu Yury
  • Login: yura-hb
  • Kind: user
  • Location: Prague
  • Company: Content Office

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
  - family-names: Hayeu
    given-names: Yury
title: "Dynamic Job Shop Scheduling Simulator"
version: 1.0.0
date-released: 2024-05-09

GitHub Events

Total
Last Year

Dependencies

.github/workflows/main.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • codecov/codecov-action v3 composite
.github/workflows/release.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • softprops/action-gh-release v1 composite
.github/workflows/rename_project.yml actions
  • actions/checkout v3 composite
  • stefanzweifel/git-auto-commit-action v4 composite
requirements.txt pypi
  • PyYAML ==6.0.1
  • cloudpickle *
  • flatdict ==4.0.1
  • matplotlib *
  • packaging *
  • pandas ==1.3.5
  • pyarrow *
  • simpy ==4.1.1
  • tabulate ==0.9.0
  • tensordict *
  • torch *
  • torch_geometric *
  • torchaudio *
  • torchrl *
  • torchvision *
  • tqdm ==4.66.2
setup.py pypi
requirements-frozen.txt pypi
  • Farama-Notifications ==0.0.4
  • MarkupSafe ==2.1.5
  • PyQt5 ==5.15.10
  • XlsxWriter ==3.2.0
  • aiohttp ==3.9.3
  • aiosignal ==1.3.1
  • arrow ==1.3.0
  • chardet ==5.2.0
  • click ==8.1.7
  • cloudpickle ==3.0.0
  • contourpy ==1.2.0
  • cycler ==0.12.1
  • filelock ==3.13.1
  • flatdict ==4.0.1
  • fonttools ==4.49.0
  • fqdn ==1.5.1
  • frozenlist ==1.4.1
  • fsspec ==2024.2.0
  • gensim ==4.3.2
  • gymnasium ==0.29.1
  • isoduration ==20.11.0
  • joblib ==1.3.2
  • jsonpointer ==2.4
  • kiwisolver ==1.4.5
  • lightning ==2.2.1
  • lightning-utilities ==0.11.2
  • lxml ==5.1.0
  • matplotlib ==3.8.3
  • mpmath ==1.3.0
  • multidict ==6.0.5
  • networkx ==3.2.1
  • nltk ==3.8.1
  • numpy ==1.26.4
  • packaging ==23.2
  • pandas ==1.3.5
  • pillow ==10.2.0
  • ply ==3.11
  • pyarrow ==15.0.0
  • pyparsing ==3.1.1
  • pytorch-lightning ==2.2.1
  • regex ==2023.12.25
  • scikit-learn ==1.4.1.post1
  • scipy ==1.12.0
  • simpy ==4.1.1
  • smart-open ==7.0.4
  • sympy ==1.12
  • tabulate ==0.9.0
  • tensordict ==0.3.1
  • threadpoolctl ==3.3.0
  • torch ==2.2.1
  • torch_geometric ==2.5.0
  • torchaudio ==2.2.1
  • torchmetrics ==1.3.2
  • torchrl ==0.3.0
  • torchvision ==0.17.1
  • tqdm ==4.66.2
  • types-python-dateutil ==2.8.19.20240311
  • uri-template ==1.3.0
  • webcolors ==1.13
  • webencodings ==0.5.1
  • wrapt ==1.16.0
  • yarl ==1.9.4