Repositori ini menyediakan lingkungan pembandingan yang komprehensif untuk berbagai masalah penjadwalan mesin, termasuk penjadwalan toko pekerjaan (JSP), penjadwalan toko aliran (FSP), penjadwalan toko kerja fleksibel (FJSP), FJSP dengan kendala perakit Ini bertujuan untuk menjadi pusat terpusat bagi para peneliti, praktisi, dan penggemar yang tertarik untuk mengatasi tantangan penjadwalan mesin.
Repositori mencakup metode solusi yang tepat, heuristik dan berbasis pembelajaran, masing -masing kompatibel dengan satu atau lebih varian masalah jadwal mesin:
| Metode solusi | Jenis | Jsp | Fsp | Fjsp | FJSP SDST | FAJSP | Online (f) JSP |
|---|---|---|---|---|---|---|---|
| Milp | Akurat | ||||||
| CP-SAT | Akurat | ||||||
| Aturan pengiriman | Heuristis | ||||||
| Algoritma genetika | Heuristis | ||||||
| FJSP-DRL | Drl | ||||||
| L2d | Drl | ||||||
| Daniel | Drl |
Di sini kami memberikan beberapa contoh singkat tentang cara menggunakan metode solusi dalam repositori ini. Untuk informasi lebih rinci dan lebih banyak contoh, silakan merujuk ke tutorial di sini dan di sini.
from solution_methods . dispatching_rules import run_dispatching_rules
from solution_methods . helper_functions import load_job_shop_env , load_parameters
parameters = load_parameters ( "configs/dispatching_rules.toml" )
jobShopEnv = load_job_shop_env ( parameters [ 'instance' ]. get ( 'problem_instance' ))
makespan , jobShopEnv = run_dispatching_rules ( jobShopEnv , ** parameters ) from solution_methods . helper_functions import load_job_shop_env , load_parameters
from solution_methods . GA . run_GA import run_GA
from solution_methods . GA . src . initialization import initialize_run
parameters = load_parameters ( "configs/genetic_algorithm.toml" )
jobShopEnv = load_job_shop_env ( parameters [ 'instance' ]. get ( 'problem_instance' ))
population , toolbox , stats , hof = initialize_run ( jobShopEnv , ** parameters )
makespan , jobShopEnv = run_GA ( jobShopEnv , population , toolbox , stats , hof , ** parameters ) from solution_methods . L2D . src . run_L2D import run_L2D
from solution_methods . helper_functions import load_job_shop_env , load_parameters
parameters = load_parameters ( "configs/L2D.toml" )
jobShopEnv = load_job_shop_env ( parameters [ 'instance' ]. get ( 'problem_instance' ))
makespan , jobShopEnv = run_L2D ( jobShopEnv , ** parameters )Kami menyediakan fungsi merencanakan untuk menarik hubungan prioritas antara operasi dan grafik gantt untuk masalah penjadwalan toko pekerjaan:
![]() | ![]() |
|---|
Repositori disusun untuk memberikan kemudahan penggunaan dan fleksibilitas:
job , operation , machine , dan jobShop ). Juga berisi simulationEnv untuk masalah penjadwalan dinamis dengan kedatangan pekerjaan online.Untuk informasi lebih rinci, silakan merujuk ke makalah kami. Jika Anda menggunakan repositori ini dalam riset Anda, harap pertimbangkan mengutip makalah berikut:
Reijnen, R., Van Straaten, K., Bukhsh, Z., & Zhang, Y. (2023). Benchmark Penjadwalan Toko Pekerjaan: Lingkungan dan contoh untuk metode pembelajaran dan non-pembelajaran. ARXIV Preprint ARXIV: 2308.12794. https://doi.org/10.48550/arxiv.2308.12794
Atau, menggunakan entri Bibtex berikut:
@article { reijnen2023job ,
title = { Job Shop Scheduling Benchmark: Environments and Instances for Learning and Non-learning Methods } ,
author = { Reijnen, Robbert and van Straaten, Kjell and Bukhsh, Zaharah and Zhang, Yingqian } ,
journal = { arXiv preprint arXiv:2308.12794 } ,
year = { 2023 }
}Pracetak dari makalah ini tersedia atau arxiv. Harap dicatat bahwa versi ini adalah placeholder, dan akan segera diperbarui dengan versi final.