https://github.com/rcoteru/logstoreopt
Python-based prototype for the optimization of the incoming orders to a logistic center.
https://github.com/rcoteru/logstoreopt
combinatorial-optimization local-search logistics parallel python
Last synced: 4 months ago
JSON representation
Python-based prototype for the optimization of the incoming orders to a logistic center.
- Host: GitHub
- URL: https://github.com/rcoteru/logstoreopt
- Owner: rcoteru
- License: gpl-3.0
- Created: 2022-11-17T11:21:05.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-10-13T12:06:54.000Z (over 2 years ago)
- Last Synced: 2025-01-16T05:13:47.827Z (about 1 year ago)
- Topics: combinatorial-optimization, local-search, logistics, parallel, python
- Language: Python
- Homepage:
- Size: 87.9 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# logStoreOpt: Logistic Storage Optimization
## Description
Python-based prototype for the optimization of the incoming orders to a logistic center.
- Store is divided in different storage **locations**.
- Each location has a **fixed surface** and **access time**, and **holds stacks of different items**.
- Only items of the **same product** may be **stacked together**, at the price of **increased access time per level**.
- Each **product** has a defined **surface** and a **stack-height limit**.
- Locations may or may not be **shelves**. Some products cannot be stored in shelves.
- The loction of the incoming **orders** (groups of **items** of different **products**) are optimized so as to **minimise used surface and access time**.
## Algorithm
The solutions of the the problem is found through a local search algorithm, where several randomly generated initial solutions are optimized in parallel. The cost functions are normalized based on randomly generated solutions and scalarized using a weighted geometric mean. One may set the weights to prioritize one objective over another.
## Environment / Setup
```bash
git clone https://github.com/rcote98/logStoreOpt.git # clone the repo
cd logStoreOpt # move in the folder
python3 -m venv logStoreOpt_env # create virtualenv
source logStoreOpt_env/bin/activate # activate it
pip install -r requirements.txt # install dependencies
python3 example.py # run the example code
```