Skip to content

Vicomtech/warehouse-testbed

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Warehouse Testbed for Reinforcement Learning

This repository provides a configurable warehouse simulation environment and reproducible testbed for benchmarking reinforcement learning (RL) algorithms.

The environment models:

  • stochastic item arrivals
  • dynamic order generation
  • constrained agent movement
  • action masking (invalid actions filtered)

Built on top of this environment, the testbed enables:

  • reproducible scenario generation across heterogeneous warehouse layouts
  • evaluation under diverse operating conditions (from low-load to highly congested settings)
  • dataset export (CSV) for offline analysis
  • training and benchmarking with PPO / MaskablePPO

Installation

git clone <your-repo-url>
cd warehouse-testbed
pip install -r requirements.txt

Quick Start

Run a simple random agent:

python run_example.py

This will:

  • initialize the environment
  • render the warehouse
  • sample valid actions
  • print rewards

Environment

Main file:

environment/env_storehouse.py

Gym-style usage:

state, _ = env.reset()
state, reward, terminated, truncated, info = env.step(action)

Action Masking

mask = env.get_available_actions()

Scenario Generation

Enable with:

record_scenario=True

This generates:

  • *_config.csv → layout and parameters
  • *_steps.csv → initial state + events

Useful for:

  • reproducibility
  • dataset generation
  • benchmarking

Benchmark Pipeline

Run:

python benchmark_pipeline.py

This will:

  • generate scenarios
  • train RL agents
  • evaluate performance
  • save results in results_*

Configuration

Defined in:

environment/conf.json

You can modify layouts, probabilities and warehouse settings.


Structure

warehouse-testbed/
├── README.md
├── requirements.txt
├── benchmark_pipeline.py
├── run_example.py
├── environment/
│   ├── env_storehouse.py
│   └── conf.json

Use Cases

  • RL benchmarking
  • warehouse optimization
  • action masking research
  • dataset generation

License

MIT License

About

Testbed defining different warehouse layouts, configurations, and inbound/outbound events to be used as a benchmark by researchers

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages