lmd-sizing-scheduling
Code, instances, results and scripts for the paper "Tactical workforce sizing and scheduling decisions for last-mile delivery"
Science Score: 67.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
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: sciencedirect.com, zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.8%) to scientific vocabulary
Repository
Code, instances, results and scripts for the paper "Tactical workforce sizing and scheduling decisions for last-mile delivery"
Basic Info
- Host: GitHub
- Owner: alberto-santini
- License: gpl-3.0
- Language: Python
- Default Branch: main
- Size: 3.88 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 2
- Open Issues: 0
- Releases: 1
Metadata Files
README.md
Tactical workforce sizing and scheduling decisions for last-mile delivery
This repository contains the instance generator, the instances, the solver, the solutions and the scripts used to create the figures presented in the following paper:
bib
@article{msa2024,
title={Tactical workforce sizing and scheduling decisions for last-mile delivery},
author={Mandal, Minakshi Pundam and Santini, Alberto and Archetti, Claudia},
year=2025,
journal={European Journal of Operational Research},
volume=323,
issue=1,
pages={153--169},
doi={10.1016/j.ejor.2024.12.006},
url={https://www.sciencedirect.com/science/article/pii/S0377221724009482}
}
You can also cite this repository through Zenodo:
bib
@misc{msa2024code,
title={{Code for the Paper ``Tactical workforce sizing and scheduling decisions for last-mile delivery''}},
author={Mandal, Minakshi Pundam and Santini, Alberto and Archetti, Claudia},
year=2024,
doi={10.5281/zenodo.10561003},
url={https://github.com/alberto-santini/lmd-sizing-scheduling}
}
Instance generator
The generator is in folder instance_generator.
To run it, call the main.py script with the appropriate parameters.
The generator expects to find some geographical data in folder data.
However, these are very large file that are unconvenient to upload to Github (they would require the Git Large File Storage).
Therefore, you should download these files separately before running the generator.
They are:
* The "Codes Postaux" dataset with French postal codes. In particular, you need the files codes_postaux_region.*.
* The "PLZ 5 Stellig" dataset with German postal codes.
* The "GHS Pop Source Europe" dataset with population data for Europe. We used version R2016A.
Already generated instances
If you only want to replicate the results of our paper, you need not use the instance generator.
Rather, pregenerated instances in JSON format are available in folder instances.
Solver
The solver is a single Python script, contained in solver/solver.py.
It takes the following parameters:
* -m to specify the model name (base, fixed, partflex, or flex).
* -i to specify the location of the instance file.
* -c to specify the outsourcing cost multiplier (parameter OC in the paper).
* -r to specify the regional bound multiplier (parameter RM in the paper).
* -g to specify the global bound multiplier (parameter GM in the paper).
* -u to specify the maximum number of shift start times for the partflex model (parameter $\mu$ in the paper).
* -o to specify the location of the JSON solution file produced by the solver.
Results
The solver produces one JSON file for each run.
Because we performed over 50000 runs, the total size of the results runs in a few GB.
For this reason, we publish the in condensed form, using the CSV format.
File results/complete.csv contains the data used in the paper.
File results/uncapacitated.csv contains the results of further experiments, in which we disabled the regional and global upper bound on the workforce size.
Results analysis
The notebook analysis/analysis.ipynb contains a Jupyer Notebook used to perform the analysis of the results and generate the paper figures.
License
All the code is released under the GNU Public License version 3 (GPLv3).
The license is available in file LICENSE.
Owner
- Name: Alberto Santini
- Login: alberto-santini
- Kind: user
- Location: Barcelona, Spain
- Website: http://santini.in/
- Repositories: 38
- Profile: https://github.com/alberto-santini
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this code or these instances, please cite as below."
authors:
- family-names: "Mandal"
given names: "Minakshi Punam"
- family-names: "Santini"
given-names: "Alberto"
orcid: "https://orcid.org/0000-0002-0440-0357"
- family-names: "Archetti"
given-names: "Claudia"
title: "Code and instances for the paper 'Tactical workforce sizing and scheduling decisions for last-mile delivery'"
version: 1.0
doi: 10.5281/zenodo.10561003
date-released: 2024-01-25
url: "https://github.com/alberto-santini/lmd-sizing-scheduling"
preferred-citation:
type: article
authors:
- family-names: "Mandal"
given names: "Minakshi Punam"
- family-names: "Santini"
given-names: "Alberto"
orcid: "https://orcid.org/0000-0002-0440-0357"
- family-names: "Archetti"
given-names: "Claudia"
journal: "European Journal of Operational Research"
volume: 323
issue: 1
start: 153
end: 169
title: "Tactical workforce sizing and scheduling decisions for last-mile delivery"
year: 2025
doi: 10.1016/j.ejor.2024.12.006
GitHub Events
Total
- Push event: 5
Last Year
- Push event: 5